#xDSlydlt40x4303. 一个简单的整数问题2 A Simple Problem with Integers

一个简单的整数问题2 A Simple Problem with Integers

题目描述

给定一个长度为 NN 的数列 AA,以及 MM 条指令,每条指令可能是以下两种之一:

  • C l r d,表示把 A[l],A[l+1],,A[r]A[l],A[l+1],\dots,A[r] 都加上 dd
  • Q l r,表示询问数列中第 lrl \sim r 个数的和。

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

输入格式

第一行两个整数 N,MN,M

第二行 NN 个整数 A[i]A[i]

接下来 MM 行表示 MM 条指令,每条指令的格式如题目描述所示。

输出格式

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

每个答案占一行。

样例

输入样例:

10 5
1 2 3 4 5 6 7 8 9 10
Q 4 4
Q 1 10
Q 2 4
C 3 6 3
Q 2 4

输出样例:

4
55
9
15

样例解释

初始数组:[1,2,3,4,5,6,7,8,9,10][1,2,3,4,5,6,7,8,9,10]

  1. Q 4 4 → 第4个数是4,输出4
  2. Q 1 10 → 总和1+2+...+10=55
  3. Q 2 4 → 2+3+4=9
  4. C 3 6 3 → 第3到第6个数加3 → 数组变为 [1,2,6,7,8,9,7,8,9,10][1,2,6,7,8,9,7,8,9,10]
  5. Q 2 4 → 2+6+7=15

数据范围

  • 1N,M1051 \le N,M \le 10^5
  • d10000|d| \le 10000
  • A[i]109|A[i]| \le 10^9

时空限制

  • 时间限制:1 秒
  • 空间限制:64 MB