Pagini recente » Cod sursa (job #1384543) | Cod sursa (job #110149) | Statisticile problemei Por Costel, Zeul | Cod sursa (job #1125843) | Cod sursa (job #1001246)
#include<stdio.h>
unsigned v[15005],s[15005];
int main()
{
freopen("datorii.in","r",stdin);
freopen("datorii.out","w",stdout);
unsigned n,m,i,j,x,k,a,b,y,c,p;
scanf("%u%u",&n,&m);
for(i=1;i<=n;i++)
{
scanf("%u",&v[i]);
p=i;
while(p<=n)
{
s[p]=s[p]+v[i];
p=p+(p & (-p));
}
}
for(i=1;i<=m;i++)
{
scanf("%u%u%u\n",&c,&a,&b);
if(c==0)
{
p=a;
while(p<=n)
{
s[p]=s[p]-b;
p=p+(p & (-p));
}
}
else
{
j=b;
y=0;
while(j>0)
{
y=y+s[j];
j=j-(j & (-j));
}
j=a-1;
while(j>0)
{
y=y-s[j];
j=j-(j & (-j));
}
printf("%u\n",y);
}
}
return 0;
}