#include<bits/stdc++.h> using namespace std; int f(long long n){ int acc = 0; while(n){ int d = n % 10; acc += d * d; n /= 10; } return acc; } int main(){ long long k, a, b; cin >> k >> a >> b; int acc = 0; for(int fn = (a + k - 1) / k; fn <= min(18ll * 9, b / k); fn++){ long long n = k * fn; if(f(n) == fn){ acc++; } } cout << acc << endl; }
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 | #include<bits/stdc++.h> using namespace std; int f(long long n){ int acc = 0; while(n){ int d = n % 10; acc += d * d; n /= 10; } return acc; } int main(){ long long k, a, b; cin >> k >> a >> b; int acc = 0; for(int fn = (a + k - 1) / k; fn <= min(18ll * 9, b / k); fn++){ long long n = k * fn; if(f(n) == fn){ acc++; } } cout << acc << endl; } |