白毛飞飞
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld

题目描述

因为旅行者是个现充,所以派蒙在提瓦特大陆很无聊。
安柏于心不忍,给她安排了一场飞行训练。
派蒙需要飞越 n 个障碍点,第 i 个障碍点的高度为 a_i
她会从坐标零点出发,初始高度为 0 ,并且不会走回头路。
对于 i \in [1,n] ,只要当前高度大于等于 a_i ,派蒙就能越过第 i 个障碍。
如果对于 i \in [0,n),从位置 i 到 i+1 最多能上升一格,那么她能否越过所有障碍?

输入描述:

第一行有一个整数 n\ (\ 1 \leq n \leq 10^5\ )
第二行有 n 个整数 a_i\ (\ 1 \leq a_i \leq 10^9\ )  。

输出描述:

如果派蒙能越过所有障碍,输出 YES
否则,输出 NO 。
你可以输出任意形式的 YES 和 NO 。
YES\ ,Yes\ ,yes\ ,yEs 都会被视为 YES 。
示例1

输入

复制
5
1 2 3 2 1

输出

复制
YES

说明

飞行路径的高度可以是 1\ 2\ 3\ 3\ 3