#C1459. J6 例题-1 掉落的小球

J6 例题-1 掉落的小球

J6 例题-1 掉落的小球

题目描述

许多的小球一个一个的从一棵满二叉树上掉下来组成 FBT\rm FBTFullBinaryTree\rm Full Binary Tree,满二叉树),每一时间,一个正在下降的球第一个访问的是非叶子节点。然后继续下降时,或者走右子树,或者走左子树,直到访问到叶子节点。决定球运动方向的是每个节点的布尔值。最初,所有的节点都是 false\rm false,当访问到一个节点时,如果这个节点是 falsefalse,则这个球把它变成 truetrue,然后从左子树走,继续它的旅程。如果节点是 truetrue,则球也会改变它为 falsefalse,而接下来从右子树走。满二叉树的标记方法如下图:

131.gif

因为所有的节点最初为 falsefalse,所以第一个球将会访问节点 11,节点 22 和节点 44,转变节点的布尔值后在在节点 88 停止。第二个球将会访问节点 113366,在节点1212 停止。明显地,第三个球在它停止之前,会访问节点 112255,在节点 1010 停止。

现在你的任务是,给定 FBT\rm FBT 的深度 DDII,表示第 II 个小球下落,你可以假定 II 不超过给定的 FBT\rm FBT 的叶子数,写一个程序求小球停止时的叶子序号。

输入格式

一行包含两个用空格隔开的整数 DDII

输出格式

对应输出第 II 个小球下落停止时的叶子序号。

样例输入

4 2

样例输出

12

样例分析

如上所述。

数据范围

对于 100%100\% 的数据: 2D202 \leq D \leq 20, 1I5242881 \leq I \leq 524288