问一下这道题为什么错了??****```c
#include<bits/stdc++.h>
using namespace std;
long long a,x[100005],m,sum=0;
bool w(int x){
int sum=sqrt(x);
if(sum*sum==x) return 1;
return 0;
}
int main(){
cin>>a;
for(int i=1;i<=a;i++)cin>>x[i];
for(int i=1;i<=a;i++){
for(int j=i;j<=a;j++){
m=x[i]+x[j];
if(w(m)==1) sum++;
}
}
cout << sum;
return 0;
}```c