#T2141. 多项式查询(Polynomial Queries)

多项式查询(Polynomial Queries)

链接: https://cses.fi/problemset/task/1736

板块: Range Queries

时限: 1.00 s | 内存: 512 MB

题目描述

你的任务是对一个包含 nn 个值的数组进行维护,并高效处理以下类型的查询:

  1. 将区间 [a,b][a,b] 中的第一个值增加 11,第二个值增加 22,第三个值增加 33,依此类推。
  2. 计算区间 [a,b][a,b] 中数值的和。

输入

第一行输入包含两个整数 nnqq:分别表示数组大小和查询数量。

下一行包含 nn 个值 t1,t2,,tnt_1,t_2,\dots,t_n:数组的初始内容。

最后有 qq 行描述查询。每行格式为 "11 aa bb" 或 "22 aa bb"。

输出

对每个求和查询输出其答案。

数据范围

1n,q21051 \le n, q \le 2 \cdot 10^5 1ti1061 \le t_i \le 10^6 1abn1 \le a \le b \le n

样例输入

5 3
4 2 3 1 7
2 1 5
1 1 5
2 1 5

样例输出

17
32