rt,TLE on 5 test,但极限数据只跑了 3ms。
#include<bits/stdc++.h>
using namespace std;
int a[200005], f[200005];
int main(){
int t;
cin >> t;
for(int i = 1; i <= 200000; i ++){
a[i] = i;
int b = a[i];
while(b){
b /= 3;
f[i] ++;
}
}
while(t --){
int l, r, ans = 0;
cin >> l >> r;
for(int i = l; i <= r; i ++) a[i] = i;
while(a[l]){
a[l] /= 3;
ans ++;
}
for(int i = l; i <= r; i ++){
ans += f[i];
}
cout << ans << "\n";
}
return 0;
}