1 条题解

  • 0
    @ 2025-7-4 14:20:38

    暴力三重循环

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        int n;
        cin >> n;
        int ans = 0;
        for (int a = 1; a <= n; a++)
            for (int b = a; b <= n; b++)
                for (int c = 1; c <= n; c++)
                    if (a * a + b * b == c * c)
                        ans++;
        cout << ans;
        return 0;
    }
    

    第三重循环直接生成+检验

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        int n;
        cin >> n;
        int ans = 0;
        for (int a = 1; a <= n; a++)
            for (int b = a; b <= n; b++)
            {
                int c = sqrt(a * a + b * b);
                if (c <= n && a * a + b * b == c * c)
                    ans++;
            }
        cout << ans;
        return 0;
    }
    
    • 1

    信息

    ID
    10867
    时间
    1000ms
    内存
    128MiB
    难度
    1
    标签
    递交数
    6
    已通过
    2
    上传者