Pagini recente » Cod sursa (job #274116) | Cod sursa (job #3219890) | Cod sursa (job #376114) | Cod sursa (job #2406708) | Cod sursa (job #3326756)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("datorii.in");
ofstream fout("datorii.out");
int n, q, i, op, x, y;
int aib[100002];
static inline void Update(int poz, int val) {
while(poz <= n) {
aib[poz] += val;
poz += (poz & -poz);
}
}
static inline int Query(int poz) {
int sum = 0;
while(poz >= 1) {
sum += aib[poz];
poz -= (poz & -poz);
}
return sum;
}
int main() {
ios_base::sync_with_stdio(false);
fin.tie(NULL);
fout.tie(NULL);
fin >> n >> q;
for(i = 1; i <= n; i++) {
fin >> x;
Update(i, x);
}
while(q--) {
fin >> op >> x >> y;
if(op == 0) Update(x, -y);
else fout << Query(y) - Query(x - 1) << "\n";
}
return 0;
}