Pagini recente » Cod sursa (job #1869652) | Cod sursa (job #397248) | Cod sursa (job #392050) | Cod sursa (job #73764) | Cod sursa (job #3328682)
#include <fstream>
#include <algorithm>
#include <cmath>
using namespace std;
ifstream cin("datorii.in");
ofstream cout("datorii.out");
int n,m;
int a[15000],btg[130];
int c,t,v,p,q;
int nr;
int main(){
cin>>n>>m;
nr=sqrt(n);
for(int i=1;i<=n;i++){
cin>>a[i];
btg[(i-1)/nr]+=a[i];
}
for(int i=1;i<=m;i++){
cin>>c;
if(c==0){
cin>>t>>v;
a[t]-=v;
if(a[t]<0)a[t]=0;
btg[(t-1)/nr]-=v;
if(btg[(t-1)/nr]<0)btg[(t-1)/nr]=0;
}
if(c==1){
cin>>p>>q;
int pi=(p-1)/nr;
int pf=(q-1)/nr;
int s=0;
for(int j=p;j<=(pi+1)*nr;j++)
s+=a[j];
for(int j=pi+1;j<pf;j++)
s+=btg[j];
for(int j=pf*nr+1;j<=q;j++)
s+=a[j];
cout<<s<<endl;
}
}
}