Pagini recente » Cod sursa (job #1042506) | Cod sursa (job #1553822) | Cod sursa (job #1527977) | Cod sursa (job #2725072) | Cod sursa (job #2850997)
//cu aib
#include<fstream>
using namespace std;
int n,m;
int data[15001];
#define flip(n) (n&(-n))
fstream cin("datorii.in",ios::in),cout("datorii.out",ios::out);
void add(int ind,int v){
for(;ind<=n;ind+=flip(ind)){
data[ind]+=v;
}
}
int sum(int ind){
int s = 0;
for(ind;ind>0;ind-=flip(ind)){
s+=data[ind];
}
return s;
}
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
int x;
cin>>x;
add(i,x);
}
bool op;
for(;m;m--){
cin>>op;
if(op){
int r,l;
cin>>l>>r;
cout<<sum(r)-sum(l-1)<<'\n';
}
else{
int x,v;
cin>>x>>v;
add(x,-v);
}
}
return 0;
}