Universal Online Judge
UOJ
时间限制:N/A
空间限制:N/A
Statistics
## 题目描述
如题,已知一个数列,你需要进行下面两种操作:
1. 将某区间每一个数数加上$x$;
2. 求出某一个数的值。
## 输入输出格式
### 输入格式
第一行包含两个整数$N$、$M$,分别表示该数列数字的个数和操作的总个数。
第二行包含$N$个用空格分隔的整数,其中第$i$个数字表示数列第$i$项的初始值。
接下来$M$行每行包含$2$或$4$个整数,表示一个操作,具体如下:
操作$1$: 格式:`1 x y k` 含义:将区间$[x,y]$内每个数加上$k$;
操作$2$: 格式:`2 x` 含义:输出第$x$个数的值。
### 输出格式
输出包含若干行整数,即为所有操作$2$的结果。
## 输入输出样例
### 输入样例 #1
```
5 5
1 5 4 2 3
1 2 4 2
2 3
1 1 5 -1
1 3 5 7
2 4
```
### 输出样例 #1
```
6
10
```
## 说明/提示
#### 样例 1 解释:

故输出结果为 6、10。
---
#### 数据规模与约定
对于$30\%$的数据:$Nle8,Mle10$;
对于$70\%$的数据:$Nle 10000,Mle10000$;
对于$100\%$的数据:$1 leq N, Mle 500000$,$1 leq x, y leq n$,保证任意时刻序列中任意元素的绝对值都不大于$2^{30}$。