#ABC255F. 前序与中序
前序与中序
前序与中序
题目描述
考虑一棵具有编号 的 个顶点的二叉树。这里,二叉树是每个顶点至多有 2 个子节点的有根树。具体来说,二叉树的每个顶点至多有 1 个左子节点和至多有 1 个右子节点。
判断是否存在一棵以顶点 1 为根、满足以下条件的二叉树,如果存在,请给出其中一棵。
- 所有顶点按深度优先搜索的前序(pre-order)遍历排列为 。
- 所有顶点按深度优先搜索的中序(in-order)遍历排列为 。
输入格式
输入按以下格式从标准输入给出:
N
P_1 P_2 … P_N
I_1 I_2 … I_N
输出格式
如果不存在满足题目描述中条件的以顶点 1 为根的二叉树,输出 。
否则,按以下格式输出满足条件的二叉树之一,共 行。
即,对于 ,第 行输出顶点 的左子节点编号 和右子节点编号 。
如果没有左子节点(或右子节点),则 (或 )输出 。
如果存在多棵满足条件的以顶点 1 为根的二叉树,输出其中任意一棵均可。
L_1 R_1
L_2 R_2
⋮
L_N R_N
样例
6
1 3 5 6 4 2
3 5 1 4 6 2
3 6
0 0
0 5
0 0
0 0
4 2
存在一棵以顶点 1 为根、满足题目条件的二叉树。
2
2 1
1 2
-1
不存在满足条件的以顶点 1 为根的二叉树,因此输出 。
数据范围
- 为整数。
- 是 的排列。
- 是 的排列。
提示
答案不唯一,输出任意合法解即可。
难度
提高+/省选
通过率
—
尝试
0
已通过
0
- ID
- 2883
- 类型
- 传统题
- Time Limit
- 2000ms
- Memory Limit
- 1024MiB
- 上传者