#include <cstdlib> #include <iostream> #include <string.h> #include <algorithm> #include <math.h> #include <functional> #include <set> using namespace std; long long SumaKwadratow(long long n) { long long sumaKw = 0; while (n != 0) { sumaKw += (n%10) * (n% 10); n /= 10; } return sumaKw; } int main() { long long a,b,k,result=0; ios_base::sync_with_stdio(0); cin >> k >> a>> b; for (long long fn = 0; fn <= 1459; fn++) // max wartosc dla fn to 1459 (9^2*18 + 1) { long long n = fn * k; //dla badanej wartosci fn i zalozonego k, n musi miec taka wartosc //sprawdzam czy spelnione sa warunki zadania if (n>=a && n<=b && k<n && k*SumaKwadratow(n)==n) { result++; } } cout << result << "\n"; 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 31 32 33 34 35 36 37 38 39 40 41 42 | #include <cstdlib> #include <iostream> #include <string.h> #include <algorithm> #include <math.h> #include <functional> #include <set> using namespace std; long long SumaKwadratow(long long n) { long long sumaKw = 0; while (n != 0) { sumaKw += (n%10) * (n% 10); n /= 10; } return sumaKw; } int main() { long long a,b,k,result=0; ios_base::sync_with_stdio(0); cin >> k >> a>> b; for (long long fn = 0; fn <= 1459; fn++) // max wartosc dla fn to 1459 (9^2*18 + 1) { long long n = fn * k; //dla badanej wartosci fn i zalozonego k, n musi miec taka wartosc //sprawdzam czy spelnione sa warunki zadania if (n>=a && n<=b && k<n && k*SumaKwadratow(n)==n) { result++; } } cout << result << "\n"; return 0; } |