#include <iostream> using namespace std; int suma_kwcyfr(long long n){ int s = 0; while(n){ s = s + (n%10)*(n%10); n /= 10; } return s; } int main() { long long a, b, k, i, wyn = 0, bb, iteracje = 0, pocz, kon; int c = 0; cin >> k >> a >> b; bb = b; while(bb){ bb /= 10; c++; } //cout << "cyfry=" << c << endl; if (a%k == 0) pocz = a; else pocz = (k - a%k) + a; kon = min(c*81*k,b); for( i = pocz; i <= kon; i = i + k){ if(suma_kwcyfr(i) == i/k) { //cout << i << endl; wyn++; } iteracje++; } //cout << "iteracje " << iteracje << endl; cout << wyn; 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 | #include <iostream> using namespace std; int suma_kwcyfr(long long n){ int s = 0; while(n){ s = s + (n%10)*(n%10); n /= 10; } return s; } int main() { long long a, b, k, i, wyn = 0, bb, iteracje = 0, pocz, kon; int c = 0; cin >> k >> a >> b; bb = b; while(bb){ bb /= 10; c++; } //cout << "cyfry=" << c << endl; if (a%k == 0) pocz = a; else pocz = (k - a%k) + a; kon = min(c*81*k,b); for( i = pocz; i <= kon; i = i + k){ if(suma_kwcyfr(i) == i/k) { //cout << i << endl; wyn++; } iteracje++; } //cout << "iteracje " << iteracje << endl; cout << wyn; return 0; } |