#include<bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin >> n;
for(int i = 0 ; i < n ; i++){
int d,l;
cin >> d >> l;
int k = 1;
for(int j = 0 ; j < d-1 ; j++){//循环d-1层,最后一层叶子节点不用计算
if(l%2){
k = 2*k;
l = (l+1) / 2;
}
else{
k = 2*k + 1;
l = l/2;
}
}
cout << k << endl;
}
return 0;
}
EOJ_1070_下落的小球
最新推荐文章于 2022-05-31 18:20:48 发布