#P1481. 跳跃

跳跃

题目描述

蚂蚁军团收到了来自一栋高楼楼顶的友军求助信号,他们必须以最短的时间赶到楼顶,增援友军。首领带领军团乘坐飞船开始增援。

这栋楼由于经过蚁国战争的洗礼,不同的楼层受到到了不同程度的破坏,因此不同楼层的飞行时间有所不同,飞船飞跃第 ii 层楼所需的时间为 AiA_i

蚂蚁军团的科学家,已经研发出了飞船的空间跳跃模块,飞船每次开启空间跳跃,都可以不费吹灰之力瞬间向上跳跃 11 层或者 22 层,跳跃不需要消耗任何时间。

不过这个科技还不够成熟,每次跳跃之后,必须停下来,把空间跳跃模块修整一下,才能再次开启跳跃。由于时间紧张,首领决定,每次跳跃之后修整时,立刻打开飞船的推进器,让飞船向上飞行一个楼层的距离,然后再次开启空间跳跃模块向上跳跃

现已知 NN 层楼,每层楼飞行所需要的时间,请编程计算出飞船从楼底飞行到楼顶(最高层上一层的屋面上),最少需要的飞行时间。

输入格式

11 行读入整数 NN,代表楼的层数。

22 行读入 NN 个整数,第 ii 个整数 AiA_i 代表飞船飞跃第 ii 层楼所需要的时间。

输出格式

输出一个整数,代表最短的飞行时间。

样例输入 #1

5
4 5 2 3 8

样例输出 #1

2

样例输入 #2

6
8 1 9 10 2 5

样例输出 #2

3

样例 11 说明

共有 55 层楼,从楼底先开启跳跃模块,跳跃到 33 楼,然后开启飞行器飞跃 33 楼需要的时间为 22,然后再次开启跳跃模块,跳跃到 55 楼(顶楼) 的屋顶。

数据范围

20%20\% 的数据,n10n \le 10

40%40\% 的数据,n100n \le 100

60%60\% 的数据,n5000n \le 5000

100%100\% 的数据,3n100003 \le n \le 100001Ai1001 \le A_i \le 100