Pagini recente » Cod sursa (job #2071763) | Cod sursa (job #1861544) | Cod sursa (job #1095792) | Cod sursa (job #1537500) | Cod sursa (job #1247740)
#include<cstdio>
#include<algorithm>
using namespace std;
int n,i,j,nr,AIB[15005],m,p,q;
void ADD(int x,int y)
{
int i;
for (i=x;i<=n;i=i+(i&(-i)))
AIB[i]+=y;
}
int SUM(int x)
{
int i,s=0;
for (i=x;i>=1;i=i-(i&(-i))) s=s+AIB[i];
return s;
}
int main()
{
freopen("datorii.in","r",stdin);
freopen("datorii.out","w",stdout);
scanf("%d %d",&n,&m);
for (i=1;i<=n;i++)
{
scanf("%d",&nr);
ADD(i,nr);
}
while (m--)
{
scanf("%d",&nr);
if (nr==0)
{
scanf("%d %d",&p,&q);
ADD(p,-q);
}
if (nr==1)
{
scanf("%d %d",&p,&q);
printf("%d\n",SUM(q)-SUM(p-1));
}
}
return 0;
}