无聊的数列
题目背景
无聊的 YYB 总喜欢搞出一些正常人无法搞出的东西。有一天,无聊的 YYB 想出了一道无聊的题:无聊的数列。。。
题目描述
维护一个数列 $a_i$,支持两种操作:
- `1 l r K D`:给出一个长度等于 $r-l+1$ 的等差数列,首项为 $K$,公差为 $D$,并将它对应加到 $[l,r]$ 范围中的每一个数上。即:令 $a_l=a_l+K,a_{l+1}=a_{l+1}+K+D\ldots a_r=a_r+K+(r-l) \times D$。
- `2 p`:询问序列的第 $p$ 个数的值 $a_p$。
输入输出格式
输入格式
第一行两个整数数 $n,m$ 表示数列长度和操作个数。
第二行 $n$ 个整数,第 $i$ 个数表示 $a_i$。
接下来的 $m$ 行,每行先输入一个整数 $opt$。
若 $opt=1$ 则再输入四个整数 $l\ r\ K\ D$;
若 $opt=2$ 则再输入一个整数 $p$。
输出格式
对于每个询问,一行一个整数表示答案。
输入输出样例
输入样例 #1
5 2
1 2 3 4 5
1 2 4 1 2
2 3
输出样例 #1
6
说明
#### 数据规模与约定
对于 $100\%$ 数据,$0\le n,m \le 10^5,-200\le a_i,K,D\le 200, 1 \leq l \leq r \leq n, 1 \leq p \leq n$。