#include <cstdio>
#include <cstdlib>
#include <algorithm>
using namespace std;
using ll = long long;
int main()
{
auto f = [](ll x)
{
ll result = 0;
while(x)
{
ll r = x % 10;
result += r * r;
x /= 10;
}
return result;
};
ll k, a, b;
scanf("%lld%lld%lld", &k, &a, &b);
auto beg = a;
if(auto r = a % k)
beg += k - r;
constexpr ll m = 18 * 9 * 9;
auto end = min(m * k, b);
auto counter = 0;
for(auto i = beg; i <= end; i += k)
if(k * f(i) == i)
++counter;
printf("%d", counter);
}
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 | #include <cstdio> #include <cstdlib> #include <algorithm> using namespace std; using ll = long long; int main() { auto f = [](ll x) { ll result = 0; while(x) { ll r = x % 10; result += r * r; x /= 10; } return result; }; ll k, a, b; scanf("%lld%lld%lld", &k, &a, &b); auto beg = a; if(auto r = a % k) beg += k - r; constexpr ll m = 18 * 9 * 9; auto end = min(m * k, b); auto counter = 0; for(auto i = beg; i <= end; i += k) if(k * f(i) == i) ++counter; printf("%d", counter); } |
English