luogu#P7673. [COCI2013-2014#5] OBILAZAK
[COCI2013-2014#5] OBILAZAK
题目描述
给出一棵有 个节点的完全二叉树,遍历这棵树的规律如下:
-
起点是二叉树第一层的唯一一个节点。
-
如果当前节点的左孩子还没有记录到,那么就记录左孩子的编号并移动到左孩子处。
-
如果当前节点没有左孩子或者左孩子已经记录过,就记录当前节点的编号。
-
如果当前节点已经记录过,那么就记录右孩子的编号并移动到右孩子处。
-
如果当前节点及此节点的左右孩子都已经记录过,那么就移动到当前节点的父节点处。
现在给出从第一层的节点出发记录下的编号顺序,请你求出原本的完全二叉树。
输入格式
第一行,一个整数 ,表示这个完全二叉树有 个节点;
第二行, 个整数,表示从第一层的节点出发记录下的编号顺序。
输出格式
输出共 行,为原本的完全二叉树。
2
2 1 3
1
2 3
3
1 6 4 3 5 2 7
3
6 2
1 4 5 7
提示
【样例解释 #1】
先移动到节点 ,发现左孩子没有记录,移动到节点 并记录节点 ;发现节点 没有孩子,返回节点 ,发现此节点没有记录,记录节点 ;发现右孩子没有记录,移动到节点 并记录节点 。
【样例解释 #2】
【数据范围】
对于 的数据,。
【说明】
本题分值按 COCI 原题设置,满分 。
题目译自COCI2013_2014 CONTEST #5 T2 OBILAZAK