#L0497. 区间等差数列与单点查询

区间等差数列与单点查询

题目描述

维护一个长度为 nn 的数列 aia_i,支持两种操作:

  • 1 l r K D:将一个首项为 KK、公差为 DD、长度为 rl+1r-l+1 的等差数列加到 [l,r][l,r] 范围的每个数上。即 ala_lKKal+1a_{l+1}K+DK+D\dotsara_rK+(rl)×DK+(r-l) \times D

  • 2 p:查询 apa_p 的值。

输入格式

第一行两个整数 n,mn,m,分别表示数列长度和操作次数。

第二行 nn 个整数,第 ii 个数表示 aia_i 的初始值。

接下来 mm 行,每行先输入一个整数 optopt

  • opt=1opt=1,再输入四个整数 l,r,K,Dl,r,K,D
  • opt=2opt=2,再输入一个整数 pp

输出格式

对于每个 opt=2opt=2 的询问,一行一个整数表示答案。

样例

5 2
1 2 3 4 5
1 2 4 1 2
2 3
6

提示

对于 100%100\% 的数据,1n,m1051\le n,m \le 10^5200ai,K,D200-200\le a_i,K,D \le 2001lrn1 \le l \le r \le n1pn1 \le p \le n

难度 普及+/提高-
通过率
尝试 0
已通过 0
ID
1225
类型
传统题
Time Limit
1000ms
Memory Limit
128MiB
上传者