问题
输入有三行,其中:
- 第一行输入一个数 \(n\) ;
- 第二行输入 \(n\) 个数 \(\mathrm{Post}_{1}, \mathrm{Post}_{2}, \dots, \mathrm{Post}_{n}\) ,它们是某棵二叉树的后序遍历结果;
- 第三行输入 \(n\) 个数 \(\mathrm{In}_{1}, \mathrm{In}_{2}, \dots, \mathrm{In}_{n}\) ,它们是同一棵二叉树的中序遍历结果。
请输出两行,其中:
- 第一行输出 \(n\) 个数,用空格隔开,它是这棵二叉树的前序遍历;
- 第二行输出 \(n\) 个数,用空格隔开,它是这棵二叉树的层次序遍历。
二叉树各结点的值互不相等。
示例
示例中的二叉树外观:
注:下划线 _ 表示空位。
输入:
输出:
数据范围
- \(1 \le n \le 1000\)
- \(-1000 \le \mathrm{Post}_{i} \le 1000\) ,对于 \(1 \le i \le n\) 。
- \(-1000 \le \mathrm{In}_{i} \le 1000\) ,对于 \(1 \le i \le n\) 。