Pagini recente » Profil Tgabi | Cod sursa (job #2277945) | Cod sursa (job #2401466) | Cod sursa (job #1158083) | Cod sursa (job #164628)
Cod sursa(job #164628)
#include<stdio.h>
#define nmax 15000
int v[nmax],n,m;
inline int lsb(int x)
{
return (x&(x-1)^x);
}
int query(int x)
{
int s=0;
while(x>0)
{
s+=v[x];
x-=lsb(x);
}
return s;
}
void update(int x, int val)
{
while(x<=n)
{
v[x]+=val;
x+=lsb(x);
}
}
int main()
{
int i,cod,a,b,val;
freopen("datorii.in","r",stdin);
freopen("datorii.out","w",stdout);
scanf("%d %d",&n,&m);
for(i=1;i<=n;i++)
{
scanf("%d",&val);
update(i,val);
}
for(i=1;i<=m;i++)
{
scanf("%d %d %d",&cod,&a,&b);
if(cod==1)
{
printf("%d\n",query(b)-query(a-1));
}
else
update(a,-b);
}
return 0;
}