(果然还是水题。。。)
http://acm.hdu.edu.cn/showproblem.php?pid=1407
分析:
之前小心翼翼地用sqrt来控制三重循环条件,试了一下果然还是直接用100来的直接啊
代码:
//1407
#include <iostream>
#include <stdio.h>
#include <math.h>
using namespace std;
void deal(int n)
{
int x,y,z;
for(x=1;x<100;x++) //sqrt(n/3)+1 还不如100来的直接啊,而且还WA
for(y=x;y<100;y++)
for(z=y;z<100;z++)
if(x*x+y*y+z*z==n){
cout<<x<<" "<<y<<" "<<z<<endl;
return;
}
}
int main()
{
int n;
while(cin>>n){
deal(n);
}
return 0;
}