#include <iostream> #include <vector> using namespace std; long long sum_of_q(long long n){ long long s=0; do{ s+=(n%10)*(n%10); n/=10; }while(n); return s; } int main(){ long long a,b,k; long long M=1e18; cin>>k>>a>>b; int count=0; long long mm=18*9*9; long long i=k*((a-1)/k)+k; while (i<=b && i/k<=mm){ if(k*sum_of_q(i)==i)++count; i+=k; } cout<<count<<endl; return 0; }
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 | #include <iostream> #include <vector> using namespace std; long long sum_of_q(long long n){ long long s=0; do{ s+=(n%10)*(n%10); n/=10; }while(n); return s; } int main(){ long long a,b,k; long long M=1e18; cin>>k>>a>>b; int count=0; long long mm=18*9*9; long long i=k*((a-1)/k)+k; while (i<=b && i/k<=mm){ if(k*sum_of_q(i)==i)++count; i+=k; } cout<<count<<endl; return 0; } |