题解 | #自守数#
自守数
https://www.nowcoder.com/practice/88ddd31618f04514ae3a689e83f3ab8e
#include <math.h> #include <stdio.h> int ton(int k) { int tmp=10; for(int i=1;i<=k;i++) { tmp=tmp*10; } return tmp; } int main() { int n; int n2; int k,sum=0; scanf("%d",&n); for(int i=0;i<=n;i++) { n2=i*i; if(i>=0&&i<=9)k=0; if(i>=10&&i<=99)k=1; if(i>=100&&i<=999)k=2; if(i>=1000&&i<=9999)k=3; if(i>=10000&&i<=99999)k=4; if(i==(n2%ton(k))) sum++; } printf("%d",sum); return 0; }