#S60001. 多维汉堡
多维汉堡
题目描述
在某个世界里,今天是圣诞节。
在高羽先生的派对上,他决定制作多维汉堡。等级 汉堡( 是大于等于 的整数)定义如下:
- 等级 汉堡就是 层肉饼。
- 等级 汉堡()是从下往上依次叠加: 层面包、 个等级 汉堡、 层肉饼、 个等级 汉堡、 层面包。
例如,用 P 表示肉饼,用 B 表示面包,则等级 汉堡为 BPPPB(旋转 度后),等级 汉堡为 BBPPPBPBPPPBB。
高羽先生制作的是等级 的汉堡。腊肠犬"ルンルン"会从这个汉堡的最下方吃掉 层(每一层可以是肉饼或面包)。请问ルンルン会吃到多少块肉饼?
输入格式
第一行包含两个整数 和 —— 分别表示汉堡的等级和要吃的层数。
输出格式
输出等级 汉堡从下往上数 层中包含的肉饼数量。
样例输入 #1
2 7
样例输出 #1
4
样例输入 #2
1 1
样例输出 #2
0
样例输入 #3
50 4321098765432109
样例输出 #3
2160549382716056
说明/提示
- 样例 #1:等级 汉堡(
BBPPPBPBPPPBB)的最下方 层中包含 块肉饼。 - 样例 #2:等级 汉堡的最底层是面包。
- 样例 #3:等级 汉堡的层数已经大到无法用 位整数表示。
约束条件
- (等级 汉堡的总层数)
- 均为整数。