luogu#P4756. Added Sequence

Added Sequence

题目描述

LL发明了一种新的数据结构,并将其命名为LL数组。LL数组的作用是可以在O(1)O(1)时间内将整个数组加上或减去一个数。现在给你一个长度为NN的数组aa,他想用LL数组来挑战你的计算能力。

定义f(i,j)=p=ijapf(i,j)=|\sum_{p=i}^{j} a_p|其中x|x|表示xx的绝对值。

定义一个数组的美丽度为max1ijNf(i,j)\max_{1 \le i \le j \le N} f(i,j),每当他将整个数组加上xx ,请你回答此时的美丽度。

注意,你的算法必须为在线的。

输入格式

第一行输入两个整数N,MN,M,分别表示数组长度和询问数量。

第二行输入NN个整数,表示起始的数组aa

接下来MM行,每行一个整数xix_i,设前面一次回答的答案为prepre,那么表示第ii次询问时在起始数组的基础上整个数组加上[(xi+pre)%(4n+1)2n][(x_i+pre)\%(4n+1)-2n]。其中%\%表示求余运算,第一次回答时pre=0pre=0

输出格式

输出MM行,第ii行为在起始数组的基础上整个数组加上xix_i时的美丽度。

4 4
4 5 6 7
1
15
0
12
6
6
14
26

提示

四次加上的数字分别为-7,-4,-2,1。

1N,M2000001 \le N,M \le 200000

ai200000|a_i| \le 200000

0xi8000000 \le x_i \le 800000