题目描述
给定长度为 n 的序列 h 。
现在有 q 次询问,每次给定整数 l,r 满足 1≤l≤r≤n ,我们称一个三元组 (a,b,c) 是合法的,当且仅当它们满足以下条件:
-
l≤a<b<c≤r 。
-
b−a≤c−b 。
你希望求出所有合法三元组的 ha+hb+hc 的最大值。
输入格式
第一行输入一个整数 n ,表示序列的长度。
第二行输入 n 个整数,第 i 个整数代表 hi 。
第三行输入一个整数 q ,表示询问的次数。
接下来 q 行,第 i 行输入两个整数 li,ri ,表示一次询问的信息。
输出格式
输出包含 q 行。第 i 行输出一个整数,表示第 i 次询问的答案。
样例
样例输入
5
5 2 1 5 3
3
1 4
2 5
1 5
样例输出
12
9
12
数据范围
对于所有数据,3≤n≤5∗105,1≤q≤5∗105 ;对于 1≤i≤n ,1≤hi≤109 ;对于 1≤i≤q ,1≤li<li+2≤ri≤n 。
子任务 1 ( 20% ) : n,q≤100 。
子任务 2 ( 40% ) : n≤5∗103。
子任务 3 ( 10% ) : n≤2∗105,q=1,l1=1,r1=n 。
子任务 4 ( 30% ) : 无特殊限制。