初看, 以为是和数论有关呢, 再看范围只有10000, 果断暴力……
#include<iostream>
using namespace std;
int main()
{
int n, i, j, k;
loop:while( cin>>n )
{
for(i=1; i<=100; i++)
for(j=i; j<=100; j++)
for(k=j; k<=100; k++)
{
if( i*i+j*j+k*k==n )
{
cout<<i<<" "<<j<<" "<<k<<endl;
goto loop;
}
}
}
}