Cod sursa(job #1706286)

Utilizator Mihai9Oniga Mihai Mihai9 Data 22 mai 2016 09:55:17
Problema Datorii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.48 kb
#include <fstream>
using namespace std;
ifstream fin("datorii.in");
ofstream fout("datorii.out");
int n,m,a[15001];
int q(int p){
 int s=0;
 for(int i=p;i>=1;i-=i&-i){s+=a[i];}
 return s;
}
void baga(int p,int val){
 for(int i=p;i<=n;i+=i&-i){a[i]+=val;}
}
int main(){
    int i,x,y,z;
    fin>>n>>m;
    for(i=1;i<=n;i++){
     fin>>x;baga(i,x);
    }
    while(m--){
     fin>>x>>y>>z;
     if(x){fout<<q(z)-q(y-1)<<"\n";}
     else{baga(y,-z);}
    }
    return 0;
}