社区讨论

枚举 60 pts TLE 求调(悬棺)

P1586四方定理参与者 3已保存回复 11

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
11 条
当前快照
1 份
快照标识符
@mlnic0ga
此快照首次捕获于
2026/02/15 16:52
4 天前
此快照最后确认于
2026/02/16 10:24
3 天前
查看原帖
CPP
#include <bits/stdc++.h>
using namespace std;

int fx(int n){
    int c=0;
    int x=sqrt(n);
    if(x*x==n) c++;
    for(int i=1;i<=x;i++){
        for(int j=i;j<=x;j++){
            if(i*i+j*j==n) c++;
        }
    }
    for(int i=1;i<=x;i++){
        for(int j=i;j<=x;j++){
            for(int k=j;k<=x;k++){
                if(i*i+j*j+k*k==n) c++;
            }
        }
    }
    for(int i=1;i<=x;i++){
        for(int j=i;j<=x;j++){
            for(int k=j;k<=x;k++){
                for(int l=k;l<=x;l++){
                    if(i*i+j*j+k*k+l*l==n) c++;
                }
            }
        }
    }
    return c;
}
int main(){
    int t;
    cin >> t;
    while(t--){
        int n;
        cin >> n;
        cout << fx(n) << endl;
    }
    return 0;
}

回复

11 条回复,欢迎继续交流。

正在加载回复...