fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. typedef long long ll;
  4. const int Mod=998244353;
  5.  
  6. void solve() {
  7.  
  8. ll k,l1,r1,l2,r2;
  9. cin >> k >> l1 >> r1 >> l2 >> r2;
  10. ll ans =0;
  11. int high=min(r1,r2);
  12. int low=max(l1,l2);
  13. ans+=max(0,high-low+1);
  14. ll test_k=k;
  15. while(test_k<=1e9){
  16. int upper=min(r1,r2/test_k);
  17. int lower=max(l1,(l2+test_k-1)/test_k);
  18. if(upper>=lower) ans+=upper-lower+1;
  19. test_k*=k;
  20. }
  21. cout << ans << '\n';
  22.  
  23. }
  24.  
  25. int main(){
  26. ios::sync_with_stdio(false);
  27. cin.tie(nullptr);
  28.  
  29. int t;
  30. cin >> t;
  31. while (t--) solve();
  32.  
  33.  
  34. return 0;
  35. }
  36.  
Success #stdin #stdout 0.01s 5316KB
stdin
5
2 2 6 2 12
2 1 1000000000 1 1000000000
3 5 7 15 63
1000000000 1 5 6 1000000000
15 17 78 2596 20914861
stdout
12
1999999987
6
1
197