题目描述
将1、2、...、n这n个整数按顺序依次放入栈中,在中间任意时刻都可以选择将栈顶元素出栈,最终所有的整数都会出栈,这些整数出栈的顺序组成了一个长度为n的序列,现在给你这个出栈序列,请问这个序列是否合法?(即判断是否存在一种合法的出入栈顺序能够形成这个出栈序列)
输入
输入的第一行包含一个整数n(1 ≤ n ≤ 100)。
输入的第二行包含n个整数,两两之间以一个空格分隔,为1到n的一个排列,表示这些整数的出栈序列。
输出
如果出栈序列合法,输出“YES”;否则,输出“NO”。
样例输入
5
4 5 3 2 1
样例输出
YES