Pagini recente » Cod sursa (job #313968) | Cod sursa (job #2548138) | Cod sursa (job #456426) | Cod sursa (job #1979834) | Cod sursa (job #3247345)
#include <bits/stdc++.h>
using namespace std;
#define int long long
int aib[15005];
int v[15005];
int n, m;
void update(int i, int val){
while(i <= n){
aib[i] += val;
i += i&-i;
}
}
int query(int i){
int ret = 0;
while(i){
ret += aib[i];
i -= i&-i;
}
return ret;
}
signed main()
{
ifstream cin("datorii.in");
ofstream cout("datorii.out");
cin >> n >> m;
for(int i = 1; i <= n; i++){
cin >> v[i];
update(i, v[i]);
}
int cer, x, y;
for(int i = 0; i < m; i++){
cin >> cer >> x >> y;
if(cer == 0){
update(x, -y);
}
else{
cout << query(y) - query(x-1) << '\n';
}
}
return 0;
}