2615: 区间赋值区间求和

Memory Limit:128 MB Time Limit:1 S
Judge Style:Text Compare Creator:
Submit:78 Solved:26

Description

给你n个整数,请问第x个到第y个的和是多少?

与上一题不同,在询问前后,这n个数中的某个区间的数可能会同时变成z。

Input

第一行:n和m,表示n个数,m个询问

第二行:n个整数

接下来m行,每行3或4个整数o、x、y(、z):o表示求和还是更改数字,如果o=1,表示第x个数到第y个数都变成z;如果o=2,表示求第x个到第y个的和。

Output

对于每次询问和,输出区间的和。

Sample Input Copy

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

Sample Output Copy

5
3

HINT

1<=x、y<=n;1<=o<=2;n个数,每个数的绝对值不超过1000;5<=n、m<=200000

(10个点数据范围:5, 10, 100, 500, 1000, 5000, 10000, 50000, 100000, 150000, 200000)

加入题单

上一题 下一题 算法标签: