#include <bits/stdc++.h>
int rev(int n){//反转整数
int result = 0;//保存翻转后的结果
while(1)//while(true)也可以
{
int i = n%10;//每次都是得到最低位上的数字
result = result*10+i;//将最低位作为最高位,然后得到sum
n = n/10;//把原来的数字逐渐缩小
if(n == 0)
{
break;
}
}
return result;
}
int main(){
int i;
for(i=1;i<256;i++)
if(i*i==rev(i*i))
printf("%d\n",i);
return 0;
}

京公网安备 11010502036488号