测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A71340. 区间修改与查询

编程题 基础

题目描述

给定由 N 个整数构成的数列,再给定 M 条指令,每条指令可能是如下两种之一:

  1. C l r d,表示将区间 [l,r] 之间的每个数都加上整数 d

  2. Q l r,表示询问区间 [l,r] 之间所有数的和;

对于每次询问,请输出对应的和。

输入格式

1 行有 2 个整数 NM

2 行有 N个整数,空格隔开。

接下来 M 行,每行读入一条题目描述的指令。

数据范围

1≤N,M≤10^51 \le l,r \le N-10000≤d≤10000,读入的 N 个整数的值在 [-10^9,10^9] 范围。

输出格式

输出若干行,每行一个整数,代表了对于每次询问输出的结果。

输入输出样例

输入 #1
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
输出 #1
4
55
9
15