P1078 - 完全二叉树

题目描述

一棵包含N个节点的完全二叉树,每个节点中有一个大写字母(A - Z),从上往下,从左往右进行依次编号存储,比如,包含5个节点的完全二叉树如下图:

1.png

现在请你编写一个程序去构建出这样的二叉树,然后对它进行先序、中序、后序、层次遍历

输入格式

第1行,1个正整数N,代表完全二叉树的节点个数

第2行,1个字符,查找字符x对应的父节点元素(保证存在x的父节点元素)

输出格式

第1行,先序遍历结果

第2行,中序遍历结果

第3行,后序遍历结果

第4行,层次遍历结果

第5行,二叉树的高度(根节点的高度默认为1)

第6行,字符x对应的父节点元素

输入输出样例

输入样例 输出样例
5 D A B D E C
D B E A C
D E B C A
A B C D E
3
B

数据范围与提示

100%的数据:1 <= N <= 26,查找字符x的父节点元素时保证一定存在该节点的父节点元素

测试点数目

共10个测试点,每个测试点10分

时间与内存限制

每个测试点时间:1000ms(1.0s),内存:256MiB

输入输出模式

本OJ支持两种输入输出模式

1. 标准输入输出模式:
直接从标准输入和标准输出读写数据,不需要使用freopen进行文件输入输出重定向
2. 文件输入输出模式(国内信奥赛输入输出模式):
从文件中读写数据,需要使用freopen进行输入输出重定向
本题输入文件名为:P1078.in,输出文件名为:P1078.out