Pagini recente » Cod sursa (job #32206) | Cod sursa (job #776545) | Cod sursa (job #2104973) | Cod sursa (job #1403390) | Cod sursa (job #2947206)
#include <bits/stdc++.h>
using namespace std;
ifstream in ("datorii.in");
ofstream out ("datorii.out");
#define int long long
int n;
int aib[1001];
void update (int pos, int val)
{
for (int i=pos; i<=n; i += i & -i)
aib[i] += val;
}
int query (int pos)
{
int ret = 0;
for (int i=pos; i>0; i -= i & -i)
ret += aib[i];
return ret;
}
signed main()
{
int q;
in >> n >> q;
for (int i=1; i<=n; i++)
{
int x;
in >> x;
update(i, x);
}
while (q--)
{
int op, x, y;
in >> op >> x >> y;
if (op == 1)
out << query(y) - query(x-1) << '\n';
else
update(x, -y);
}
return 0;
}