之前写过关于自守数的篇,着实暴力解法,换汤不换药的解法。
int main()
{
int n;
scanf("%d",&n);
int j,b;
int flag,count=0;
for(int i=1;i<=n;i++)
{
j=i;
b=j*j;//如5*5=25,6*6=36
while(j)
{
if(j%10==b%10)
{
j/=10;
b/=10;
flag=1;//置flag标识符判断是否为自守数
}
else
{
flag=0;
break;
}
}
if(flag==1)
{
printf("%d\n",i);
count++;//记录个数
}
}
printf("%d",count);
}
今天收到进入复试的通知啦,感觉是为了稳住军心,毕竟现在还没安排好。希望快点到吧。