问题 5509 --虎哥移盘子

5509: 虎哥移盘子★★

时间限制: 1 Sec  内存限制: 128 MB
提交: 112  解决: 68
[提交][状态][命题人:]

题目描述

给定排成一行的n个盘子,盘子的半径从1到n。
现在有n个柱子,每个柱子上有一个盘子,问怎样才能把所有的盘子移动到一个柱子上。
把一个盘子从柱子i移动到柱子j的移动规则如下:
1.柱子i上只有一个盘子
2.柱子j上没有盘子,或柱子j上的盘子半径大于柱子i上的盘子
3. i,j必须相邻

输入

第一行一个整数n(3≤n≤2e5)
第二行n个整数,第i个数字ai(1≤ai≤n),表示第i个柱子上盘子的半径为ai.

输出

如果可以将所有的盘子移动到一个柱子上则输出YES,反之输出NO.

样例输入
Copy
4
1 3 4 2
样例输出
Copy
YES

提示

样例2
输入:
3
3 1 2
输出:
NO

在第一个测试样例中,可将所有盘子移到柱子3上,移动过程如下:
1. 将半径为3的盘子从柱子2移动柱子3上;
2. 将半径为1的盘子从柱子1移动柱子2上;
3. 将半径为2的盘子从柱子4移动柱子3上;
4. 将半径为1的盘子从柱子2移动柱子3上;

来源

[提交][状态]