Advertisement
Guest User

Untitled

a guest
Jan 27th, 2015
181
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.74 KB | None | 0 0
  1. #include <cstring>
  2. #include <vector>
  3. #include <list>
  4. #include <map>
  5. #include <set>
  6. #include <deque>
  7. #include <stack>
  8. #include <bitset>
  9. #include <algorithm>
  10. #include <functional>
  11. #include <numeric>
  12. #include <utility>
  13. #include <sstream>
  14. #include <iostream>
  15. #include <iomanip>
  16. #include <cstdio>
  17. #include <cmath>
  18. #include <cstdlib>
  19. #include <ctime>
  20. #include <memory.h>
  21. #include <cassert>
  22.  
  23. using namespace std;
  24.  
  25. int main() {
  26.   long long h, n;
  27.   cin >> h >> n;
  28.   long long ans = 0;
  29.   int mv = 0;
  30.   n--;
  31.   for (int i = h - 1; i >= 0; i--) {
  32.     int real = !!(n & (1LL << i));
  33.     if (mv != real) {
  34.       ans += ((1LL << (i + 1)) - 1);
  35.       mv ^= 1;
  36.     }
  37.     mv ^= 1;
  38.     ans++;
  39.   }
  40.   cout << ans << endl;
  41.   return 0;
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement