Pagini recente » Cod sursa (job #2261988) | Cod sursa (job #2803511) | Cod sursa (job #2929092) | Cod sursa (job #2753811) | Cod sursa (job #2625962)
#include <fstream>
using namespace std;
ifstream f ( "datorii.in" );
ofstream g ( "datorii.out" );
int n, v[15001];
void update ( int i, int val ){
while ( i <= n ){
v[i] += val;
i += ( i& ( -i ) );
}
}
int suma ( int i ){
int s = 0;
while ( i >= 1 ){
s += v[i];
i -= (i & ( -i ) );
}
return s;
}
int main()
{ int m, op, x, y, a;
f >> n >> m;
for (int i = 1; i <= n; i++ ){
f >> a;
update ( i, a );
}
for (int i = 0; i < m; i++ ){
f >> op >> x >> y;
if ( op == 0 )
update ( x, -y );
else
g << quary ( y ) - quary ( x - 1 ) <<endl;
}
return 0;
}