货架补货差额

提高-⏱ 5000ms💾 256MB#P7088🏷️ 线段树

题目描述

货架 $n$ 个格子初始各有若干件商品。依次处理 $q$ 个操作:

  • 补货 1 l r x:区间 $[l, r]$ 每个格子的商品数加 $x$;
  • 盘点 2 l r:输出区间 $[l, r]$ 的商品总数。

输入格式

第一行两个正整数 $n$ 和 $q$; 第二行 $n$ 个整数 $a_1 \ldots a_n$; 接下来 $q$ 行,每行为 1 l r x 或 2 l r。

输出格式

对每个盘点操作输出一行一个整数。

数据范围

$$1 \le n, q \le 2500$$
,
$$|a_i|, |x| \le 10^6$$
。

样例输入 #1
3 4
5 -2 7
1 1 2 3
2 1 3
2 2 3
1 3 3 -7
样例输出 #1
16
8
样例输入 #2
1 2
5
1 1 1 3
2 1 1
样例输出 #2
8