fork(1) download
  1. #include <iostream>
  2. #include<cstring>
  3. using namespace std;
  4.  
  5. int main() {
  6.  
  7. int a[1000001];
  8. memset(a, 1, sizeof(a))
  9. ;
  10. a[0] = 0;
  11. //a[1] = a[2] = 1;
  12. int i, j, k;
  13. for(i = 3; i<=1000000; i+=2) {
  14. for(j=i; j<=1000000; j<<=1) {
  15. a[j] = i;
  16. }
  17. }
  18.  
  19. for(i=1; i<=1000000; i++) {
  20. a[i] = (a[i]^a[i-1]);
  21. }
  22.  
  23. int q, l, r;
  24. cin >> q;
  25.  
  26. for(i=0; i<q; i++) {
  27. cin >> l >> r;
  28. cout << (a[l-1]^a[r]) << endl;
  29. }
  30.  
  31. return 0;
  32. }
Success #stdin #stdout 0s 19024KB
stdin
1
5 10
stdout
16843020