Submission #344496

# Submission time Handle Problem Language Result Execution time Memory
344496 2021-01-06T02:37:13 Z limabeans Trol (COCI19_trol) C++17
50 / 50
1 ms 364 KB
#include <bits/stdc++.h>
using namespace std;

template<typename T>
void out(T x) { cout << x << endl; exit(0); }
#define watch(x) cout << (#x) << " is " << (x) << endl





using ll = long long;


const int maxn = 1e6 + 5;


int f(ll x) {
    if (x<10) return x;
    int sum = 0;
    while (x>0) {
	sum += x%10;
	x /= 10;
    }
    return f(sum);
}


ll solve(ll x) {
    if (x==0) return 0;
    //1,2,3,4..9,1,2...
    ll x0 = x/9*9 + 1;
    ll s9 = 0;
    for (int i=1; i<=9; i++) s9+=i;

    ll res= 1ll*(x/9)*s9;
    for (int i=1; i<=9 && x0<=x; i++,x0++) {
	res+=i;
    }
    return res;
}

int main() {
    ios_base::sync_with_stdio(false); cin.tie(0);  cout.tie(0);



    int t;
    cin>>t;
    while (t--) {
	ll l,r;
	cin>>l>>r;
	ll res = solve(r) - solve(l-1);
	cout<<res<<"\n";
    }
    
    
    return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 364 KB Output is correct