题目描述
题目译自 JOISC 2023 Day2 T3 「水ようかん 2 / Mizuyokan 2」
水羊羹是一种用红豆沙制成的日式点心,将红豆沙与琼脂混合,并用矩形模具定型,这样就可以做成水羊羹了。
现在 JOI 君有一台水羊羹机器。使用它,JOI 君可以制作一个横向的矩形水羊羹,其上有 N−1 条垂直切割线。水羊羹的长度和切割线位置由机器上设置的 N 个参数 d1,d2,…,dN 确定。水羊羹的长度为 d1+d2+…+dN。从左到右第 (i−1) (1≤i≤N) 条切割线与第 i 条切割线之间的距离为 di。这里,我们考虑水羊羹的最左边为第 0 条切割线,水羊羹的最右边为第 N 条切割线。最初,水羊羹机器的参数满足 di=Li (1≤i≤N)。
JOI 君计划组织 Q 次茶会。第 j (1≤j≤Q) 次茶会由整数 Xj,Yj,Aj,Bj 表示。茶会按如下方式进行:
- 水羊羹机器的参数 dXj 被更新,并设置为 Yj
- JOI 君用水羊羹机器只做了一个新的水羊羹。他把水羊羹在第 Aj 条切割线和第 Bj 条切割线之间的部分取出,用于茶会。他吃掉了剩余部分。
- JOI 君沿一些切割线来切为茶会准备的水羊羹。他会将水羊羹切为一或更多块。在这个过程中应满足以下条件:如果这些切好的水羊羹块按最初的位置从左到右排列,那么这些水羊羹块的长度序列应该是锯齿形的。
这里,如果序列中元素交替上升和下降,就称这个序列是锯齿形的。例如,序列 (2,9,2,7),(7,1,9,4,6),(5),(2,1) 是锯齿形的,但序列 (1,2,3),(7,1,4,4,6),(2,2) 不是锯齿形的。准确地说,一个序列 (x1,x2,…,xm) 被称为锯齿形的,当且仅当以下条件中至少一个被满足:
- 对于 k=1,2,…,m−1,当 k 为奇数时满足不等式 xk<xk+1,当 k 为偶数时满足不等式 xk>xk+1。
- 对于 k=1,2,…,m−1,当 k 为奇数时满足不等式 xk>xk+1,当 k 为偶数时满足不等式 xk<xk+1。
因为 JOI 君想要把水羊羹给尽可能多的朋友们,他想最大化步骤 3 中得到的水羊羹数。
给定初始水羊羹机器的参数和茶会计划,写一个程序计算对于每次茶会,在满足条件的情况下最多能得到的最大水羊羹数。注意,在本题的限制下,满足条件的水羊羹切分方法必然存在。
输入格式
第一行一个整数 N。
第二行 N 个整数 L1,L2,…,LN,
第三行一个整数 Q。
接下来 Q 行,每行四个整数 Xj,Yj,Aj,Bj。
输出格式
输出 Q 行,第 j 行输出对于第 j 次茶会,在满足条件的情况下最多能得到的最大水羊羹数。
6
5 6 8 7 4 9
1
6 9 0 5
3
4
6 2 3 6
3
3 2 1 3
4 5 1 4
1 1 0 4
1
2
3
数据范围与提示
对于所有输入数据,满足:
- 1≤N≤2.5×105
- 1≤Li≤109
- 1≤Q≤5×104
- 1≤Xj≤N,1≤Yj≤109
- 0≤Aj<Bj≤N
详细子任务附加限制及分值如下表所示。
子任务编号 |
附加限制 |
分值 |
1 |
N≤200,Q≤10 |
6 |
2 |
N≤2 000,Q≤10 |
9 |
3 |
Q≤10 |
13 |
4 |
Yj=LXj |
32 |
5 |
Li,Yj≤1.2×105 |
29 |
6 |
无附加限制 |
11 |