#B3799. [NICA #1] 序列
[NICA #1] 序列
题目描述
小 A 有一个长度为 的序列 。他希望支持两种操作:
1 k
,给序列中的每一个元素加上一个整数 ;2
,查询序列中的最大子序列和。
子序列指的是从原序列中去除某些元素(也可以不去除),但不破坏余下元素的相对位置形成的新的序列。例如,对于序列 ,那么 都是它的子序列,而 不是。子序列可以为空,此时子序列和为 。
输入格式
第一行输入两个正整数 ,分别表示序列的长度和操作次数。
第二行输入 个正整数 ,表示序列的元素。
第三行开始,往下 行,每一行分别为 1 k
或者 2
的形式,含义如题意所述。
输出格式
对于每个 操作,输出一行一个整数表示答案。
5 5
-5 12 -7 2 8
2
1 3
2
1 4
2
22
31
45
提示
【样例解释】
- 第一次操作求序列中的最大子序列和,则为 ;
- 第二次操作让序列中每一个元素加上了 。此时序列变为 ;
- 第三次操作求序列中的最大子序列和,则为 ;
- 第四次操作让序列中每一个元素加上了 。此时序列变为 ;
- 第五次操作求序列中的最大子序列和,则为 。
数据保证,,,操作仅为 或 操作。