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
#include <iostream>
#include <cmath>

#define lli long long int

int t[10];

lli solve( int k, int a, int b ) 
{
    lli ret = 0;
    for( int i=0; i<10; ++i )
        t[i] = i*i;
    lli n = a; 
    if( fmod( n, k ) != 0 )
        n = (floor( n/k )+1)*k;
    while( n <= b-k )
    {
        lli f, n1; 
        f = 0; 
        n1 = n;
        while( n1 > 0 )
        {
            int fm = fmod(n1,10);
            f += t[fm];
            n1 /= 10;
        }

        if( k*f == n )
            ++ret;
        n += k;
    }
    return ret;
}

int main()
{
    lli a, b, k;
    std::cin >> k >> a >> b;
    std::cout << solve( k, a, b ) << std::endl;
    return 0;
}