Dropping Balls

题目连接
题解:每个节点,小球都是先进入左子树,再进入右子树;故每个节点的经过次数为奇数,进入左子树,偶数时进入右子树

#include
#include
#include
using namespace std;
int n,m,T;
int main()
{
     
	scanf("%d",&T);
	while(T--)
	{
     
		scanf("%d%d",&n,&m);
		int k=1;
	//	m%=(1<<(n-1));
		for(int i=1;i<n;++i)
		{
     
			if(m%2) k=k*2;
			else k=k*2+1;
			m=(m+1)/2;
		}
		printf("%d\n",k);
	}
}

你可能感兴趣的:(其它)