Pagini recente » Cod sursa (job #1596713) | Cod sursa (job #2278690) | Cod sursa (job #253644) | Cod sursa (job #974264) | Cod sursa (job #1447632)
#define zeros(x) ((x^(x-1))&x)
#include<fstream>
using namespace std;
ifstream in("datorii.in");
ofstream out("datorii.out");
void up(int poz, int quantity)
{
for(int i=poz;i<=n;i+=zeros(i))
AIB[i]+=quantity;
}
void down(int poz, int quantity)
{
for(int i=poz;i<=n;i+=zeros(i))
AIB[i]-=quantity;
}
int sum(int x)
{
int s=o;
for(int i=x;i>0;i-=zeros(i))
s+=AIB[i];
return s;
}
int n,m,val,poz,cheie,x, y, AIB[15050];
int main()
{
in>>n>>m;
for(i=1;i<=n;i++) in>>x, up(i,x);
while(m--)
{
in>>cheie>>x>>y;
if(cheie)
out<<(sum(y)-sum(x-1));
down(x,y);
}
return 0;
}