#1117. 上台阶 - 魔幻版

上台阶 - 魔幻版

描述

关于方块鸟里的楼梯,相信你已经非常熟悉了。(不熟悉的话,传送门在这里

某个晚上,马里奥偷偷的潜入了方块鸟,将楼梯改成了魔法楼梯。他在每一级台阶上附加上不同的弹簧能量,同学们可以利用所站台阶的弹簧能量来增加自己的跨步能力。比如说,蛋壳班的同学,本来每次只能走1级台阶,但如果站在附加了3点能量的台阶上,他可以选择走1、2、3、4级。

到二楼一共有NN级楼梯,现在已经我们利用魔法灰尘找到每级楼梯上的弹簧能量,问,蛋壳班的同学最少走几次能走到二楼?

输入输出格式

输入

第一行为一个正整数NN,表示到二楼共有几级楼梯。 ( 1N100,000 1 ≤ N ≤ 100,000 )

第二行为一个NN个以空格分割的非负整数p0,p1,p2,...,pn1p_0,p_1,p_2,...,p_{n-1},表示从地面开始,每级台阶的弹簧能量。(0p0,p1,p2,...,pn110 0 ≤ p_0,p_1,p_2,...,p_{n-1} ≤10 )

输出

一行,为蛋壳班同学到达二楼最少走的次数。

样例

5
1 1 1 1 1
3

样例1说明

一开始在第0级台阶,弹簧能量是1,选择走2级到第2级

第2级台阶,弹簧能量是1,选择走2级到第4级

第4级台阶,弹簧能量是1,选择走1级到第5级

共计走了3次,列举完后没有比这个更少次数的了,所以3是答案。

5
2 3 0 0 0
2

样例2说明

  • 一开始在0级台阶,弹簧能量是2,选择走1级到达第1级
  • 第1级台阶,弹簧能量是3,走4级到第5级

共计走2次。

请注意,如下选择不是最少次数:

  • 一开始在0级台阶,弹簧能量是2,选择走3级到达第3级
  • 第3级台阶,弹簧能量是0,走1级到第4级
  • 第4级台阶,弹簧能量是0,走1级到第5级

共计走3次。