#include <stdio.h>
unsigned int square_digits(unsigned long number) {
unsigned int acc = 0;
unsigned int last;
do {
last = number % 10;
acc += last * last;
number /= 10;
} while (number > 0);
return acc;
}
int main() {
unsigned long k, a, b;
scanf("%lu", &k);
scanf("%lu", &a);
scanf("%lu", &b);
int result = 0;
unsigned long i;
for(i = a; i < b+1; i++) {
if (k * square_digits(i) == 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 27 28 29 30 | #include <stdio.h> unsigned int square_digits(unsigned long number) { unsigned int acc = 0; unsigned int last; do { last = number % 10; acc += last * last; number /= 10; } while (number > 0); return acc; } int main() { unsigned long k, a, b; scanf("%lu", &k); scanf("%lu", &a); scanf("%lu", &b); int result = 0; unsigned long i; for(i = a; i < b+1; i++) { if (k * square_digits(i) == i) { result++; } } printf("%d\n", result); return 0; } |
English