数列操作与求和模板题
一、题目描述
给定一个数列a1,a2,⋯,an,需要依次执行q个操作,操作分为以下两类:
- 操作类型1:格式为“1 i x”,即给定下标i和数值x,将数列中的元素ai加上x。
- 操作类型2:格式为“2 l r”,即给定区间左右端点l和r,计算并输出数列中从al到ar这些元素的和,也就是∑i=lrai的值。
二、输入格式
- 第一行:包含两个正整数n和q,分别表示数列的长度和操作的个数,保证1≤n,q≤106。
- 第二行:包含n个整数a1,a2,⋯,an,表示初始的数列,保证每个元素的绝对值∣ai∣≤106。
- 接下来q行:每行代表一个操作,格式为“1 i x”或“2 l r”,保证1≤l≤r≤n,∣x∣≤106 。
三、输出格式
对于每一个类型为“2 l r”的操作,输出一行,该行包含一个整数,表示计算得到的区间和。
四、样例
输入
3 2
1 2 3
1 2 0
2 1 3
输出
6
五、数据范围与提示
所有数据均满足1≤n,q≤106,∣ai∣≤106,1≤l≤r≤n,∣x∣≤106 。