Pagini recente » Cod sursa (job #3160025) | Cod sursa (job #2643192) | Cod sursa (job #1862508) | Cod sursa (job #1944612) | Cod sursa (job #2270705)
#include <cstdio>
#define MAXN 15000
using namespace std;
int n, aib[MAXN+5];
void update( int p, int val )
{
for( ; p<=n; p+=p&-p )
aib[p]+=val;
}
int query( int p )
{
int s=0;
for( ; p>0; p-=p&-p )
s=s+aib[p];
return s;
}
int main()
{
freopen( "datorii.in", "r", stdin );
freopen( "datorii.out", "w", stdout );
int m, i, k, op, a, b;
scanf( "%d%d", &n, &m );
for( i=1;i<=n;i++ )
{
scanf( "%d", &k );
update(i,k);
}
for( i=1;i<=m;i++ )
{
scanf( "%d%d%d", &op, &a, &b );
if( op )
printf( "%d\n", query(b)-query(a-1) );
else
update(a,-b);
}
return 0;
}