#include <bits/stdc++.h>
using namespace std;
#define int long long
int32_t main() {
int Q;
cin >> Q;
while (Q--) {
int l, r;
cin >> l >> r;
int start;
int end;
int sum = 0;
int pref[10] = {0, 1, 3, 6, 10, 15, 21, 28, 36, 45};
int rev[9] = {0, 8, 15, 21, 26, 30, 33, 35, 36};
if (l / 9 == r / 9) {
while (l <= r) {
if (l % 9 == 0)
sum += 9;
else
sum += l % 9;
l++;
}
cout << sum << '\n';
continue;
}
start = l;
end = r;
if (start % 9 == 0) {
// cout << "how\n";
start = (l / 9) * 9;
} else {
start = (l / 9) * 9 + 9;
// cout << "rev[start-l] start, l " << start << ", " << l << '\n';
sum += rev[(start - l)];
}
end = (r / 9) * 9;
sum += pref[(r - end)];
if (start == end) {
sum += 9;
} else if (end == start + 9) {
// cout << "sum: " << sum << '\n';
} else {
// cout << (end / 9) << " " << (start / 9) << " haha\n";
sum += ((end / 9) - (start / 9)) * 45;
sum += 9;
}
cout << sum << '\n';
// cout << start << " " << end << "\n";
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |