Pagini recente » Cod sursa (job #2282886) | Cod sursa (job #646334) | Cod sursa (job #3005313) | Cod sursa (job #2821403) | Cod sursa (job #184452)
Cod sursa(job #184452)
#include <cstdio>
#define NX (1<<15)
using namespace std;
typedef long long ll;
ll T[ NX ];
int N, M;
void upd( int x, int val ) {
for( ; x <= N; x += x & -x )
T[x] += val;
}
ll que( int x ) {
ll sum = 0;
for( ; x; x -= x & -x )
sum += T[x];
return sum;
}
void cit() {
int i, x, y, op;
scanf( "%d%d", &N, &M );
for( i = 1; i <= N; i++ ) {
scanf( "%d", &x );
upd( i, x);
}
while( M-- ) {
scanf( "%d%d%d", &op, &x, &y );
if( op == 0 )
upd( x, -y );
else
printf( "%lld\n", que( y ) - que( x-1 ) );
}
}
int main() {
freopen( "datorii.in", "r", stdin );
freopen( "datorii.out", "w", stdout );
cit();
return 0;
}