问题3044--小啪啪颜游历二叉树3044: 小啪啪颜游历二叉树
时间限制: 1 Sec 内存限制: 512 MB
提交: 0 解决: 0
[提交] [状态] [讨论版] [命题人:]题目描述
有一棵二叉树,我们定义如下:
. 每个结点都有两个孩子:左孩子与右孩子;
. 如果结点的值为整数X,那么左孩子的值为2X,右孩子的值为2X+1;
. 根的值定义为1。
现在,小Y同学在这棵二叉树上模拟步行。步行时由大写字母L,R,P来描述:
. 字母L表示走到左孩子上;
. 字母R表示走到右孩子上;
. 字母P表示停留。
步行结束时所在的结点的值即是步行的值,例如:LRP的值是5,RPP的值是3。
步行过程用一段包含字符L,R,P和*的串表示,*则可以表示三种移动的任意一种。
例如,L*R包含LLR,LRR和LPR。
**包含LL,LR,LP,RL,RR,RP,PL,PR和PP。
最后,步行过程的代价是所有符合所给模式的步行方案的和(各方案最终到达点的数值)。现
在,小Y同学就请你编程帮他计算出答案。
输入
输入一行,即一个描述步行的字符串,只包含字符:L,R,P,*。
输出
输出一行一个数,即所有符合所给步行方案的和。
样例输入
L*R
样例输出
25
来源/分类
[提交] [状态]