Pagini recente » Cod sursa (job #1676827) | Cod sursa (job #1150070) | Cod sursa (job #3198997) | Cod sursa (job #2968270) | Cod sursa (job #1515459)
#include <fstream>
#define zeros(x) ( (x ^ (x - 1)) & x )
using namespace std;
ifstream f("datorii.in");
ofstream g("datorii.out");
long long v[15002],s,n, m,cod,val,st,dr,ind;
int main(){
f >> n >> m;
for(int i = 1;i <=n;i++){
f >> val;
for(int ind = i;ind <= n;ind+=zeros(ind))
v[ind]+=val;
}
while(m--){
f >> cod;
if(cod){
f >> st >> dr;
--st;
s = 0;
for(;dr > 0;dr-=zeros(dr))s+=v[dr];
for(;st > 0;st-=zeros(st))s-=v[st];
g << s << '\n';}
else {f >> ind >> val;
for(; ind <= n; ind+=zeros(ind))v[ind]-=val;
}
}
//f.close();
//g.close();
return 0;
}