#include #include #include #include #include using namespace std; #define NMAX 105 long long ans, a, b; int N, nr_cif, cifre[NMAX]; int numCif(long long val) { if(!val) return 0; cifre[++nr_cif] = val % 10; return numCif(val / 10) + 1; } long long rid_log(int a, int b) { long long ans = 1; for(int i = 1; i <= b; i++) ans = ans * a; return ans; } int main () { // freopen("a.in","r",stdin); // freopen("a.out","w",stdout); scanf("%lld%lld",&a,&b); b--; if(b < 10) { printf("%lld\n", b - a + 1); return 0; } if(a > 9) { printf("0\n"); return 0; } int N = numCif(b); reverse(cifre + 1, cifre + N + 1); long long ans = 10 - a; for(int i = 2; i < N; i++) { ans += rid_log(10 - a, i); } //printf("%lld %d\n", ans, N); for(int i = 1; i <= N; i++) { if(cifre[i] < a) { ans--; break; } ans += ((long long)cifre[i] - a) * rid_log(10 - a, N - i); } printf("%lld\n", ans + 1); return 0; }