1322: 堆高高

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:14 Solved:1

Description

原神是最近火爆的一款国产游戏,Alan同学由于学业紧张,喜爱把每日委托固定在蒙德。而今天却没有了以往类似的打怪任务,而是新任务:帮助傲娇的卢老爷做堆高高。

卢老爷他要求我们做n个堆高高,每个堆高高的层数是一个正整数  ai
为节省时间,n个堆高高可以同时制作,但是由于派蒙贪吃,每次能吃一个堆高高的最上面一层(没有就‘不执行吃操作’,也就是说第一次操作后的时刻所有的堆高高层数是1)。

每次派蒙吃完后,每个堆高高就增加一层。注意:(吃和增加同时进行)每次选择的一个堆高高层数-1,同时所有的堆高高层数+1(包括现在吃的也+1,可以理解为吃的这一层增加后和增加前层数相同)。
提示有模拟过程!!!

旅行者由此生计,指定派蒙选择一个堆高高吃最上面一层。
问随着时间推移,能否在‘ 同一个时刻 ’  做好所有满足老爷要求层数的堆高高。(这个时刻不会超过200 or 操作数不超过 200)
 

Input

有两行
第一行一个整数n(1n100)
第二行 n个正整数 ai(1ai100)

Output

可以就输出“YES”
否则输出“NO”。(输出不包含双引号)

Sample Input Copy

5
9 9 10 10 11

Sample Output Copy

YES

HINT

n个正整数整数不一定是非递减的,可以是无序的
模拟过程:
1. 第一“时刻”派蒙不能吃,高度变为 1 1 1 1 1
2. 第 2,3,4“时刻”选择第一个堆高高,吃完后,高度变为1 4 4 4 4
3. 第5,6,7“时刻”选择第二个堆高高,吃完后,高度变为  4 4 7 7 7
4. 第8,9 “时刻”选择第三个堆高高,吃完后,高度变为  6 6 7 9 9
5 第10 11“时刻”选择第四个堆高高,吃完后,高度变为  8 8 9 9 11
6 第 12 “时刻”选择第五个堆高高,吃完后,高度变为  9 9 10 10 11
这时候把应急食品 派蒙收起来就好