维护一个数列 a_i,支持两种操作:
1 l r K D
:给出一个长度等于 r-l+1 的等差数列,首项为 K,公差为 D,并将它对应加到 [l,r] 范围中的每一个数上。即:令 $a_l=al+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。
对于每个询问,一行一个整数表示答案。
5 2 1 2 3 4 5 1 2 4 1 2 2 3
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。