暴力解决,一个一个计算就可以了,应该是算枚举处理吧
#include<stdio.h>
#include<math.h>
int main(){
long long n;
while(scanf("%lld",&n)!=EOF){
int count=0;
for(int i=0;i<=n;i++){
long long t1=pow(i,2);
long long t2=i;
while(t2){
if(t1%10!=t2%10){
break;
}
t1=t1/10;
t2=t2/10;
}
if(t2==0){
count++;
}
}
printf("%d\n",count);
}
return 0;
} 
京公网安备 11010502036488号