#P8603. [蓝桥杯 2013 国 C] 横向打印二叉树

    ID: 7599 远端评测题 1000ms 128MiB 尝试: 0 已通过: 0 难度: 4 上传者: 标签>模拟树形数据结构2013蓝桥杯国赛

[蓝桥杯 2013 国 C] 横向打印二叉树

题目背景

二叉树可以用于排序。

题目描述

其原理很简单:对于一个排序二叉树添加新节点时,先与根节点比较,若小则交给左子树继续处理,否则交给右子树。

当遇到空子树时,则把该节点放入那个位置。

比如,10 8 5 7 12 4 的输入顺序,应该建成二叉树如图 11 所示。

本题目要求:根据已知的数字,建立排序二叉树,并在标准输出中横向打印该二叉树。

输入格式

输入数据为一行空格分开的 NN 个整数。N<100N<100,每个数字不超过 1000010000

NN 并没有在输入中给出。

输入数据中没有重复的数字。

输出格式

输出该排序二叉树的横向表示,为了便于评卷程序比对空格的数目,请把空格用句点代替。

10 8 5 7 12 4
...|-12
10-|
...|-8-|
.......|...|-7
.......|-5-|
...........|-4
10 5 20
...|-20
10-|
...|-5
5 10 20 8 4 7
.......|-20
..|-10-|
..|....|-8-|
..|........|-7
5-|
..|-4

提示

样例解释 1:

时限 1 秒, 64M。蓝桥杯 2013 年第四届国赛