75 #loj131. 树状数组 2 :区间修改,单点查询
树状数组 2 :区间修改,单点查询
[AdditionalFile131.zip](file://AdditionalFile131.zip?type=additional_file)
#131. 树状数组 2:区间修改,单点查询
题目描述
这是一道模板题。
给定数列 ,你需要依次进行 个操作,操作有两类:
1 l r x:给定 ,对于所有 ,将 加上 (换言之,将 分别加上 );2 i:给定 ,求 的值。
输入格式
第一行包含 2 个正整数 ,表示数列长度和询问个数。保证 。 第二行 个整数 ,表示初始数列。保证 。 接下来 行,每行一个操作,为以下两种之一:
1 l r x:对于所有 ,将 加上 ;2 i:给定 ,求 的值。
保证 。
输出格式
对于每个 2 i 操作,输出一行,每行有一个整数,表示所求的结果。
样例
输入
3 2
1 2 3
1 1 3 0
2 2
输出
2
数据范围与提示
对于所有数据,$1 \le n, q \le 10^6, |a[i]| \le 10^6, 1 \le l \le r \le n, |x| \le 10^6$。