Pagini recente » Cod sursa (job #3304414) | Cod sursa (job #386260) | Cod sursa (job #2052128) | Cod sursa (job #1011359) | Cod sursa (job #3311620)
#include <fstream>
#include <vector>
using namespace std;
ifstream cin("datorii.in");
ofstream cout("datorii.out");
int n;
int bit[150050];
void update(int i,int val){
while(i<=n){
bit[i]+=val;
i+=i&(-i);
}
}
int prefix(int i){
int sum=0;
while(i>0){
sum+=bit[i];
i-=i&-i;
}
return sum;
}
int main(){
int n,m,x,y,z;
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>x;
update(i,x);
}
for(int i=1;i<=m;i++){
cin>>x>>y>>z;
if(x==0){
update(y,-z);
}
else{
cout<<prefix(z)-prefix(y-1)<<'\n';
}
}
}