题目描述
自守数是指一个数的平方的尾数等于该数自身的自然数。
例如:
25^2=625
76^2=5776
9376^2=87909376
请求出200000以内的自守数?
样例输出
0 1 5 6 25 76 376 625 9376 90625 109376
代码如下,这是自认为最容易理解的方法,如果有更简单的方法请不吝赐教:
#include<stdio.h>
#include<math.h>
int main(){
long long s;
int i,ii;
for(i=0;i<200000;i++)
{
ii=i;
int len=1;
s=pow(i,2);
while(ii>=10)
{
ii/=10;
len++;
}
if(s%(int)pow(10,len)==i)
{
printf("%d ",i);
}
}
return 0;
}