#58. 区间修改,单点查询

区间修改,单点查询

问题描述

给定一个长度为 nn 的序列 aa,你需要进行 mm 次操作,每次操作为以下两种之一:

  • 1 l r x:将 al∼ra_{l\sim r} 的所有数字增加 xx。
  • 2 idx:输出当前 aidxa_{idx} 的值。

输入格式

第一行输入两个正整数 n,mn,m。(1≤n,m≤2×105)(1\le n,m\le 2\times 10^5)

第二行输入 nn 个正整数 aia_i。(1≤ai≤104)(1\le a_i\le 10^4)

接下来 mm 行,每行输入代表一种操作。

  • 1 l r x:将 al∼ra_{l\sim r} 的所有数字增加 xx。
  • 2 idx:输出当前 aidxa_{idx} 的值。

(1≤l≤r≤n,1≤x≤103,1≤idx≤n)(1\le l\le r\le n,1\le x\le 10^3,1\le idx\le n)

输出格式

对于每次操作 22,输出对应的答案。

样例输入

3 2
1 2 3
1 1 3 1
2 2

样例输出

3