3091. 你能回答这些问题吗【线段树】
时间限制:1000 MS 内存限制:128 MB
题目描述
## 题目描述 给定长度为 $N$ 的数列$A$,以及 $M$ 条指令,每条指令可能是以下两种之一: 1. 1 x y,查询区间 $[x,y]$ 中的最大连续子段和。 2. 2 x y,把 $A[x]$改成 $y$。 对于每个查询指令,输出一个整数表示答案。 ## 输入格式 第一行两个整数 $N,M$。 第二行 $N$ 个整数 $A[i]$。 接下来 $M$ 行每行 $3$ 个整数$k,x,y,k=1$ 表示查询(此时如果$x>y$,请交换 $x,y$),$k=2$ 表示修改。 ## 输出格式 对于每个查询指令输出一个整数表示答案。 每个答案占一行。 ## 输入 ```in1 5 3 1 2 -3 4 5 1 2 3 2 2 -1 1 3 2 ``` ## 输出 ```out1 2 -1 ``` ## 提示 ## 数据范围 $N\le500000,M\le100000$, $-1000\leA[i]\le1000$