Start: Nov, 26, 2024 22:00:00
ACM通识课二叉树专题
End: Dec, 03, 2024 02:00:00
Time elapsed:
Time remaining:

【数据结构】搜索树 2169

Time Limit:  1 s      Memory Limit:   128 MB
Submission:13     AC:0     Score:0

Description

一棵有以下性质的二叉树可以被视作一颗二叉搜索树:

1. 任意节点的左子树中所有的节点值小于该节点

2. 任意节点的右子树中所有的节点值大于该节点

现在,给定一个二叉树的先序遍历,请你判断这个二叉树是不是二叉搜索树。


Input

输入的第一行给出正整数N(<=1000)。随后一行给出N个整数键值,其间以空格分隔。

Output

如果输入序列是对一棵二叉搜索树行前序遍历的结果,则首先在一行中输出“YES”,然后在下一行输出该树广度优先遍历的结果。数字间有1个空格,一行的首尾不得有多余空格。若答案是否,则输出“NO”。

Samples

input
5 8 3 4 9 10
output
YES 8 3 9 4 10