#CSPDS03. 出栈序列判断

出栈序列判断

出栈序列判断

题目描述

有一个空栈,数字 1,2,...,n 按照从小到大的顺序依次入栈。在任意时刻,只要栈非空,就可以弹出栈顶元素。

给定一个长度为 n 的排列,判断它能否成为一种合法的出栈顺序。

输入格式

第一行一个整数 n

第二行包含 n 个整数,表示目标出栈序列。

输出格式

若该序列合法,输出 YES;否则输出 NO

4
2 1 4 3
YES
4
3 1 2 4
NO

数据范围

  • 1 <= n <= 200000
  • 输入序列是 1n 的一个排列