c
o
d
e
code
code
#include<iostream>
#include<cstdio>
using namespace std;
long long n, q;
long long a[1001000], c[1000100];
long long lowbit(long long x)
{ return x&-x; }
void add(long long x, long long y)
{
for(; x<=n; x+=lowbit(x))
c[x]+=y;
}
long long sum(long long x)
{
long long ans=0;
for(; x; x-=lowbit(x))
ans+=c[x];
return ans;
}
int main()
{
scanf("%lld%lld", &n, &q);
for(long long i=1; i<=n; i++)
{
long long x;
scanf("%lld", &x);
add(i, x);
}
while(q--)
{
long long x, y, z;
scanf("%lld%lld%lld", &z, &x, &y);
if(z==1)
add(x, y);
else
printf("%lld\n", sum(y)-sum(x-1));
}
return 0;
}