Pagini recente » Cod sursa (job #2855058) | Cod sursa (job #893802) | Cod sursa (job #2643712) | Cod sursa (job #2564778) | Cod sursa (job #1691439)
#include <cstdio>
using namespace std;
int x,y,i,c,n,m,a[15004],z;
void e (int y,int x)
{
int i;
for (i=y;i<=n;i+=(i&(-i)))
a[i]+=x;
}
int d (int x)
{
int i,s;
s=0;
for (i=x;i>=1;i-=(i&(-i)))
s+=a[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", &x);
e(i,x);
}
for (i=1;i<=m;i++)
{
scanf ("%d", &c);
if (c==0)
{
scanf ("%d %d", &x, &y);
y=-y;
e(x,y);
}
else
{
scanf ("%d %d", &x, &y);
printf ("%d\n", d(y)-d(x-1));
}
}
return 0;
}