Pagini recente » Cod sursa (job #2834016) | Cod sursa (job #1548678) | Cod sursa (job #1151893) | Cod sursa (job #109529) | Cod sursa (job #2553632)
#include <bits/stdc++.h>
#define ubs(x) ((-x)&x)
using namespace std;
ifstream f("datorii.in");
ofstream g("datorii.out");
int n,m,aib[1<<14];
void Update(int poz,int val)
{ for(; poz<=n; poz+=ubs(poz))
aib[poz]+=val;
}
int Query(int poz)
{ int s=0;
for(; poz; poz-=ubs(poz))
s+=aib[poz];
return s;
}
int main()
{ f>>n>>m;
for(int x,i=1; i<=n; i++)
{ f>>x;
Update(i,x);
}
for(int t,x,y; f>>t>>x>>y;)
if(t)
g<<Query(y)-Query(x-1)<<'\n';
else
Update(x,-y);
g.close(); return 0;
}