题解
模拟最后一个的下落。
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int D, I;
while(cin >> D >> I && D)
{
int k = 1;
for(int i = 1; i <= D - 1; ++i)
{
k = (k << 1) + 1 - (I & 1);
I = (I >> 1) + (I & 1);
}
cout << k << endl;
}
return 0;
}