没心情写数学题啦啊 好难啊
#include<bits/stdc++.h>
using namespace std;
set<int> s;
set<int>::iterator it;
int main ()
{
s.clear();
for(int i=;i*i<=1e9;i++)
s.insert(i*i);
int n; scanf("%d",&n);
bool flag =;
for(int i=;i*i<=n/;i++)
{
int t = n-i*i;
if(s.find(t) != s.end())
{
flag=;
printf("%d %d\n",i,int(sqrt(t)));
}
}
if(flag ==)
puts("No Solution");
}