Pagini recente » Cod sursa (job #883202) | Cod sursa (job #1830227) | Cod sursa (job #2726190) | Cod sursa (job #2528201) | Cod sursa (job #2355867)
#include <iostream>
#include <fstream>
#define NMAX 15005
using namespace std;
ifstream fi("datorii.in");
ofstream fo("datorii.out");
int N, M;
int aib[NMAX];
int a, b;
void Update(int pos, int value)
{
for(int i = pos; i <= N ; i += ((i) & (-i)))
aib[i] += value;
}
int Query(int pos)
{
int sum = 0;
for(int i = pos; i ; i -=((i) & (-i)))
sum += aib[i];
return sum;
}
int main()
{
fi >> N >> M;
for(int i = 1; i <= N; ++i)
{
fi >> a;
Update(i, a);
}
int test;
for(int i = 1; i <= M; ++i)
{
fi >> test >> a >> b;
if(test)
fo << Query(b) - Query(a - 1)<<"\n";
else
Update(a, -b);
}
}