#include <stdio.h> int main(void) { unsigned long long k, a, b, ans, i; scanf("%llu %llu %llu", &k, &a, &b); const squares[] = { 0, 1, 4, 9, 16, 25, 36, 49, 64, 81 }; ans = 0; for(i = a; i <= b; ++i) { unsigned long long squares_sum = 0; unsigned long long n = i; while(n) { squares_sum += squares[n % 10]; n /= 10; } if(squares_sum * k == i) { ans += 1; } } printf("%llu", ans); 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 | #include <stdio.h> int main(void) { unsigned long long k, a, b, ans, i; scanf("%llu %llu %llu", &k, &a, &b); const squares[] = { 0, 1, 4, 9, 16, 25, 36, 49, 64, 81 }; ans = 0; for(i = a; i <= b; ++i) { unsigned long long squares_sum = 0; unsigned long long n = i; while(n) { squares_sum += squares[n % 10]; n /= 10; } if(squares_sum * k == i) { ans += 1; } } printf("%llu", ans); return 0; } |