#include <cstdio>
int main()
{
int result = 0;
long long k, a, b;
scanf("%lld %lld %lld", &k, &a, &b);
a = (a % k) ? (a / k + 1) : (a / k);
b /= k;
if (b > (19*81)) {
b = 19*81;
}
for( long long i = a; i <= b; ++i) {
long long n = i * k;
long long t = 0;
for (int j = 0; j < 19; ++j) {
t += (n % 10) * (n % 10);
n /= 10;
}
if (t == i) {
++result;
}
}
printf("%d\n", result);
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 <cstdio> int main() { int result = 0; long long k, a, b; scanf("%lld %lld %lld", &k, &a, &b); a = (a % k) ? (a / k + 1) : (a / k); b /= k; if (b > (19*81)) { b = 19*81; } for( long long i = a; i <= b; ++i) { long long n = i * k; long long t = 0; for (int j = 0; j < 19; ++j) { t += (n % 10) * (n % 10); n /= 10; } if (t == i) { ++result; } } printf("%d\n", result); return 0; } |
English