//UVA679DroppingBalls
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
//#define LOCAL
const int MAXN = 20;
int main() {
int kase = 0;
#ifdef LOCAL
freopen("UVA679in.txt", "r", stdin);
freopen("UVA679out.txt", "w", stdout);
#endif
scanf("%d", &kase);
while(kase--) {
int D = 0, I = 0;
scanf("%d%d", &D, &I);
int cnt = 1;
for(int i = 2; i <= D; i++) {
if(I & 1) {//奇数
cnt *= 2;
I = (I + 1) / 2;
}
else { //偶数
cnt = cnt * 2 + 1;
I /= 2;
}
}
//模拟
printf("%d\n", cnt);
}
scanf("%*d");
return 0;
}
/*
5
4 2
3 4
10 1
2 2
8 128
-1
*/
UVA679DroppingBalls
最新推荐文章于 2019-06-08 12:28:00 发布