#AT1399. C - Build Stairs

C - Build Stairs

C - 构建阶梯

得分:300 分

问题描述

有 $N$ 个方块从左到右排成一行。第 $i$ 个方块的高度为 $H_i$。

对于每个方块,你可以进行以下操作之一:

  • 将方块的高度减少 $1$。
  • 不进行任何操作。

判断是否可以通过这些操作使得方块的高度从左到右非递减。

约束条件

  • 所有输入的值都是整数。
  • $1 \leq N \leq 10^5$
  • $1 \leq H_i \leq 10^9$

输入

输入的格式如下:

NN

H1H_1 H2H_2 ...... HNH_N

输出

如果可以通过操作使得方块的高度从左到右非递减,则输出 Yes;否则,输出 No


5
1 2 1 1 3
Yes

你可以通过将左起第二个方块的高度减少 $1$ 来达到目标。


4
1 3 2 1
No

5
1 2 3 4 5
Yes

1
1000000000
Yes