#A3080. 【例】你能回答这些问题吗

【例】你能回答这些问题吗

题目描述

给定长度为 N的数列 A,以及 M

条指令,每条指令可能是以下两种之一:

1 x y,查询区间 [x,y]中的最大连续子段和。

2 x y,把 A[x] 改成 y。

对于每个查询指令,输出一个整数表示答案。

输入

第一行两个整数 N,M。

第二行 N个整数 A[i]。

接下来 M行每行 3个整数 k,x,y,

k=1表示查询(此时如果 x>y,请交换 x,y),

k=2表示修改。

输出

对于每个查询指令输出一个整数表示答案。

每个答案占一行。

5 3
1 2 -3 4 5
1 2 3
2 2 -1
1 3 2
2
-1

提示

N500000,M100000,N≤500000,M≤100000,

1000A[i]1000−1000≤A[i]≤1000