#include <cstdio> int ssqr(unsigned long long n){ unsigned long long ret = 0; unsigned long long temp, d; while(n > 0){ temp = n/10; d = n - temp*10; ret += d*d; n = temp; } return ret; } int main() { unsigned long long a, b, k; scanf("%llu %llu %llu", &k, &a, &b); unsigned long long n = k; unsigned long long ret = 0; for (int i = 1; i <= 81*18; i++){ if (n > b) break; if (n >= a && ssqr(n) * k == n) ret++; n += k; } printf("%d\n", ret); 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 27 28 29 | #include <cstdio> int ssqr(unsigned long long n){ unsigned long long ret = 0; unsigned long long temp, d; while(n > 0){ temp = n/10; d = n - temp*10; ret += d*d; n = temp; } return ret; } int main() { unsigned long long a, b, k; scanf("%llu %llu %llu", &k, &a, &b); unsigned long long n = k; unsigned long long ret = 0; for (int i = 1; i <= 81*18; i++){ if (n > b) break; if (n >= a && ssqr(n) * k == n) ret++; n += k; } printf("%d\n", ret); return 0; } |