编程题
### 问题描述
小明是一位著名的建筑师,他有一天突发奇想,想要设计一个由多个积木大厦组成的城市。这些积木大厦高低不一,但他希望最终的城市能够呈现出一种升腾的感觉,即从城市的一端到另一端,每座大厦的高度都比前一座高。但是,因为一些原因,这些积木大厦的高度已经确定,小明只能通过以下操作来尝试调整它们的高度:
- 从第 $i$ 座积木大厦中取出一个积木(如果该大厦中有积木),并将它放入第 $i+1$ 座积木大厦中。
请你编写一个程序,判断是否能通过这些操作,使得城市呈现出一种升腾的感觉。
### 输入格式
第一行包含一个整数 $n$($1\leq n \leq 10^5$),表示积木大厦的数量。
第二行包含 $n$ 个整数 $h_1,h_2,\dots,h_n$($0\leq h_i \leq 10^9$),表示每座积木大厦的高度。
### 输出格式
对于每个测试数据,如果能通过操作使得城市呈现出一种升腾的感觉,则输出 "YES",否则输出 "NO"。
### 样例输入1
```txt
5
1 2 3 4 5
```
### 样例输出1
```txt
YES
```
### 样例输入2
```text
3
1 1 0
```
### 样例输出2
```text
NO
```