Pagini recente » Statistici Moisin Ana (pinkkage) | Cod sursa (job #2422435)
#include <fstream>
#define nmax 15005
using namespace std;
FILE *fin=fopen("datorii.in","r");
FILE *fout=fopen("datorii.out","w");
int aib[nmax];
int tip;
int n, m, x, y;
void update(int poz, int x)
{
for (int i=poz;i<=n;i+=(i&(-i)))
{
aib[i] -= x;
}
}
int query(int poz)
{
int ans = 0;
for (int i=poz;i>=1;i-=(i&(-i)))
{
ans+=aib[i];
}
return ans;
}
int main()
{
fscanf(fin, "%d %d",&n,&m);
for (int i=1;i<=n;++i)
{
fscanf(fin,"%d",&x);
update(i,-x);
}
for (int i=1;i<=m;++i)
{
fscanf(fin,"%d %d %d",&tip,&x,&y);
if (tip == 0)
{
update(x, y);
}
else
{
fprintf(fout,"%d\n",query(y) - query(x-1));
}
}
return 0;
}