
话说这是AtCoder的算法合集练习 怎么都没人搬
题意就是裸的树状数组
只不过求区间和的时候是求l~r-1,并且下标是从0开始的
但是不知道为什么样例能过,交上去就wa了
亏我还对着自己打的模板抄
//AtCoder #2
#include<bits/stdc++.h>
using namespace std;
int n, q, a, b, t;
struct TREE
{
	int Tree[500005];
	int lowbit(int k)
	{
		return k & -k;
	}
	void add(int x, int k)
	{
		for (; x <= n; x += lowbit(x))
			Tree[x] += k;
	}
	int sum(int x)
	{
		int ans = 0;
		for (; x; x -= lowbit(x))
			ans += Tree[x];
		return ans;
	}
}tree;
int main()
{
	cin >> n >> q;
	for (int i = 1; i <= n; i++)
	{
		cin >> t;
		tree.add(i, t);
	}
	for (int i = 1; i <= q; i++)
	{
		cin >> t >> a >> b;
		if (!t)
			tree.add(a + 1, b);
		else
			cout << tree.sum(b) - tree.sum(a) << endl;
	}
}