#HDU1710. Binary Tree Traversals

Binary Tree Traversals

描述

二叉树是一组有限顶点的集合,这些顶点要么为空,要么由一个根r和两个不相交的二叉树(左子树和右子树)组成。对二叉树的顶点进行系统遍历或排序有三种最重要的方法。它们是先序、中序和后序。设T是一个二叉树,根为r子树为T1,T2。

在对T的顶点的先序遍历中,我们先访问根r,然后先访问T1的顶点,然后先访问T2的顶点。

在对T的顶点进行中序遍历时,我们依次访问T1的顶点,然后是根r的顶点,然后是T2的顶点。

在对T的顶点进行后序遍历时,我们先对T1的顶点进行后序遍历,然后对T2的顶点进行后序遍历,最后访问r。

现在给定一个二叉树的先序序列和中序序列。试着找出它的后序序列

image

格式

输入

输入包含几个测试用例。每个测试用例的第一行包含一个整数n (1<=n<=1000),即二叉树的顶点数。后跟两行,分别表示前序序列和中序序列。你可以假设它们总是对应于一棵互斥二叉树。

输出

输入包含几个测试用例。每个测试用例的第一行包含一个整数n (1<=n<=1000),即二叉树的顶点数。后跟两行,分别表示前序序列和中序序列。你可以假设它们总是对应于一棵互斥二叉树。

样例

输入1

9
1 2 4 7 3 5 8 9 6
4 7 2 1 8 5 9 3 6

输出1

7 4 2 8 9 5 6 3 1

限制

1000ms,每个测试用例32768Kb。

逐句对照