#767. *L6验证二叉搜索树
*L6验证二叉搜索树
Description
二叉搜索树,是指一棵空树或者具有下列性质的二叉树: 1、若任意节点的左子树不空,则左子树上所有节点的值均小于它的根节点的值; 2、若任意节点的右子树不空,则右子树上所有节点的值均大于它的根节点的值; 3、任意节点的左、右子树也分别为二叉搜索树。
给定包含n个节点的二叉树,节点编号从1到n,其中根节点为1号,且所有节点的值均不相同,请判断是否是二叉搜索树,如果是,则按照后序遍历的顺序输出所有节点的值,否则,输出“No”。
Format
Input
第一行,一个整数n,表示二叉树的节点数量。 第二行包含n个不同的整数v1,v2,v3,。。。vn,分别表示1号到n号节点的值。整数以一个空格隔开。 接下来的n行,每行包含3个整数x,y,z,分别表示二叉树中每个节点编号,及其对应的左子节点和右子节点的编号(0表示对应子节点为空),整数之间以一个空格隔开。
数据范围: 测试点1~10:1<=n<=100,1<=x,y,z<=n,1<=vi<=5000。
Output
如果输入的二叉树是二叉搜索树,则输出为一行整数,表示按照后序遍历顺序输出所有节点的值,整数之间以一个空格隔开;否则输出“No”。
Samples
6
50 32 78 47 54 80
1 2 3
3 5 6
2 0 4
4 0 0
5 0 0
6 0 0
47 32 54 80 78 50
Limitation
1s, 1024KiB for each test case.
相关
在下列比赛中: