Ankit_132

Make It Special

Jul 5th, 2023
228
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.78 KB | None | 0 0
  1.  
  2. #include <bits/stdc++.h>
  3. using namespace std;
  4.  
  5. #define ll     long long
  6. #define _test   int _TEST; cin>>_TEST; while(_TEST--)
  7. #define pb     push_back
  8.  
  9. int main()
  10. {
  11.     _test
  12.     {
  13.         ll int n, q;
  14.         cin>>n>>q;
  15.  
  16.         int maxBit = 0;
  17.  
  18.         for(int b=0; b<61; b++)
  19.         {
  20.             if((n & (1ll<<b)) != 0)
  21.                 maxBit = b;
  22.         }
  23.  
  24.         ll int pow2 = (1ll << (maxBit+1));
  25.  
  26.         while(q--)
  27.         {
  28.             ll int l, r;
  29.             cin>>l>>r;
  30.  
  31.             ll int rr = r / pow2;
  32.             ll int tmpl = (l-1) / pow2;
  33.  
  34.             ll int ans = (rr - tmpl);
  35.  
  36.             rr = (r+1) / pow2;
  37.             tmpl = (l) / pow2;
  38.  
  39.             ans += (rr - tmpl);
  40.  
  41.             cout << max(0ll, ans) << "\n";
  42.         }
  43.     }
  44. }
  45.  
Advertisement
Add Comment
Please, Sign In to add comment