#include<cstdio> #define int long long bool spr(int n,int fn){ int s=0; while(n){ int a=n%10; n/=10; s+=a*a; } if(s==fn)return true; return false; } void licz(int k,int a,int b){ int c=0; for(int i=1;i*k<=b && i<1458;i++){ if(i*k<a)continue; if(spr(i*k,i)){ // printf("%lld\n",i*k); c++; } } printf("%lld\n",c); } void f(){ int k,a,b,c=0; scanf("%lld%lld%lld",&k,&a,&b); licz(k,a,b); /* for(int i=1;i<500;i++){ printf("k: %d\n",i); licz(i,1,1000000000000000000); } // */ } main(){ int n; // scanf("%lld",&n); // for(int i=0;i<n;i++)f(); f(); }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | #include<cstdio> #define int long long bool spr(int n,int fn){ int s=0; while(n){ int a=n%10; n/=10; s+=a*a; } if(s==fn)return true; return false; } void licz(int k,int a,int b){ int c=0; for(int i=1;i*k<=b && i<1458;i++){ if(i*k<a)continue; if(spr(i*k,i)){ // printf("%lld\n",i*k); c++; } } printf("%lld\n",c); } void f(){ int k,a,b,c=0; scanf("%lld%lld%lld",&k,&a,&b); licz(k,a,b); /* for(int i=1;i<500;i++){ printf("k: %d\n",i); licz(i,1,1000000000000000000); } // */ } main(){ int n; // scanf("%lld",&n); // for(int i=0;i<n;i++)f(); f(); } |