P1083 - 构造一棵二叉树3
题目描述
给出一棵二叉树的先序遍历和中序遍历,请你编程构造出这棵二叉树,输出该二叉树的后序遍历结果
该二叉树的每个节点的值都是一个不重复的正整数,如下图的二叉树:
先序序列:1 2 4 7 3 5 8 9 6
中序序列:4 7 2 1 8 5 9 3 6

该二叉树对应的后序序列是: 7 4 2 8 9 5 6 3 1
输入格式
第1行,1个正整数n,代表二叉树中一共有n个节点
第2行,二叉树的先序遍历结果,每个整数使用一个空格分隔
第3行,二叉树的中序遍历结果,每个整数使用一个空格分隔
输出格式
第1行,二叉树的后序遍历结果,每个整数使用一个空格分隔
输入输出样例
| 输入样例 | 输出样例 |
|---|---|
| 9 1 2 4 7 3 5 8 9 6 4 7 2 1 8 5 9 3 6 |
7 4 2 8 9 5 6 3 1 |
数据范围与提示
对于100%的数据满足:1 <= n <= 1000,二叉树里每个节点里的值为1 - 1000,不会出现重复的值
本题数据量较大,可能需要用到C++加速读写
测试点数目
共10个测试点,每个测试点10分
时间与内存限制
每个测试点时间:1000ms(1.0s),内存:256MiB
输入输出模式
本OJ支持两种输入输出模式
1. 标准输入输出模式:
直接从标准输入和标准输出读写数据,不需要使用freopen进行文件输入输出重定向
2. 文件输入输出模式(国内信奥赛输入输出模式):
从文件中读写数据,需要使用freopen进行输入输出重定向
本题输入文件名为:P1083.in,输出文件名为:P1083.out