题目描述
对于一个长度为 n 的正整数数列 a,Farmer John 定义 M 函数 M(l,r) 如下:
M(l,r)=⎩⎨⎧(M(l,⌊2l+r⌋)modmax(M(⌊2l+r⌋+1,r),7))+(a⌊2l+r⌋−1)l≤i≤rmaxai∣r−l∣>5∣r−l∣≤5l≤i≤rmaxai 代表 al,al+1,⋯,ar−1,ar 中的最大值。
⌊x⌋ 代表 ≤x 的最大整数。比如 ⌊4.2⌋=4,⌊5⌋=5。
max(x,y) 代表 x,y 中的最大值。
现在给定 n 和 a,请你求出 M(1,n)。
输入格式
输入共两行。
第一行为一个整数 n。
第二行为 n 个整数 a1,a2,⋯,an,对应题目中的正整数数列 a。
输出格式
输出共一行一个整数,代表 M(1,n) 的值。
提示
样例 1 解释
我们这里暂时使用 max{al,al+1,⋯,ar} 来表示 al,al+1,⋯,ar 中的最大值。
M(1,10)=M(1,5)modmax(M(6,10),7)+(a5−1)=max{a1,a2⋯,a5}modmax(max{a6,a7⋯,a10},7)+(a5−1)=max{a1,a2⋯,a5}modmax(84,7)+(a5−1)=max{a1,a2⋯,a5}mod84+(a5−1)=91mod84+(a5−1)=7+(a5−1)=11数据规模与约定
对于 100% 的数据,保证 1≤n≤5×105,1≤ai≤109。
测试点编号 |
n |
ai |
特殊性质 |
1∼2 |
≤10 |
≤100 |
无 |
3∼5 |
≤103 |
≤104 |
6 |
≤5×105 |
≤109 |
ai=1 |
7 |
=5 |
无 |
8∼10 |
≤5×105 |