1001:Binary Tree

时间限制: 1 S | 内存限制: 65536 KB
Accept: 29 | Submit: 115
[提交] [状态] [讨论版]
描述

计算机科学中,二叉树(英语Binary tree)是每个节点最多有两个子树的树结构。通常子树被称作左子树left subtree)和右子树right subtree))(摘自中文wiki)。

现在题目会给你一颗已经建好的二叉树,该二叉树先建好左子树,然后建好右子树,其节点编号按照建树顺序递增。给你N个数,现在要求你要把这N个数插入到合适的位置,并且满足这左孩子比根节点小,右孩子比根节点大关系。

例如样例中的5 2 3 4 7 6 9,那么其二叉树是

   

输入

输入的第1行包含1个数字,N1<=N<=100,第二行有N个数字,接下来的3N+3行,每一行有2个数,代表从第0个节点开始到第N-1个节点的第左,右子树的节点数。特别的,当为叶子节点时,这两个数值都为-1.

输出

输出该二叉树的层序遍历结果。注意最后一个数后面没有空格

样例输入

7

5 2 3 4 7 6 9

3 3

1 1

-1 -1

-1 -1

1 1

-1 -1

-1 -1

样例输出

5 3 7 2 4 6 9

HINT


来源
ShangweiZeng