Pagini recente » Cod sursa (job #2239358) | Cod sursa (job #1051804) | Cod sursa (job #2312615) | Cod sursa (job #1911572) | Cod sursa (job #380505)
Cod sursa(job #380505)
#include<stdio.h>
int main()
{
int v[15000],n,cod,b,poz,a;
long long s1,s2,m,i;
freopen("datorii.in","r",stdin);
//freopen("datorii.out","w",stdout);
scanf("%d%d",&n,&m);
for(i=0;i<=n;i++)
scanf("%d",&v[i]);
for(i=0;i<=m;i++)
{
scanf("%d",&cod);
if(!cod)
{
scanf("%d%d",a,b);
poz=0;
while(a<=n)
{
v[a]-=b;
while(a & (1<<poz)==0)
poz++;
a+=(1<<poz);
poz++;
}
}
else
{
scanf("%d%d",a,b);
s1=0;s2=0;
poz=0;
while(b>0)
{
s1+=v[b];
while(b & (1<<poz)==0)
poz++;
b-=(1<<poz);
poz++;
}
poz=0;
while(a>0)
{
s2+=v[a];
while(a & (1<<poz)==0)
poz++;
a-=(1<<poz);
poz++;
}
printf("%d", s1-s2);
}
}
printf("\n");
return 0;
}