题解 | #自守数#
自守数
https://www.nowcoder.com/practice/88ddd31618f04514ae3a689e83f3ab8e
#include <iostream> using namespace std; int main() { int n; cin>>n; int note=2; for(int i=2;i<n+1;i++) { if(i<10) { if((i*i-i)%10==0) {note=note+1;} } if((i>=10)&&(i<100)) { if((i*i-i)%100==0) {note=note+1;} } if((i>=100)&&(i<1000)) { if((i*i-i)%1000==0) {note=note+1;} } if((i>=1000)&&(i<10000)) { if((i*i-i)%10000==0) {note=note+1;} } } cout<<note; } // 64 位输出请用 printf("%lld")