题目描述
blablabla
样例
#include<iostream>
#include<cmath>
using namespace std;
const int N = 5E6+10;
int temp[N];
int n;
int main(void)
{
cin>>n;
// 使用3for循环暴力算法求
// 因为是按顺序暴力枚举的
// 所以第一重循环必须只能小于n/4
// 第二重小于n/3
// 第三重必须是小于n/2
for(int i=0;i*i*4<=n;i++) //eg 10
for(int j=i;j*j*3<=n-i*i;j++)
for(int k=j;k*k*2<=n-i*i-j*j;k++)
{
int t = n-i*i-j*j-k*k;
int d = sqrt(t);
if(d*d==t)
{
cout<<i<<' '<<j<<' '<<k<<' '<<d;
return 0;
}
}
return 0;
}
算法1
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla
算法2
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla