Pagini recente » Cod sursa (job #2205118) | Cod sursa (job #1642512) | Cod sursa (job #2405683) | Cod sursa (job #2223315) | Cod sursa (job #2680103)
#include <fstream>
using namespace std;
ifstream in("datorii.in");
ofstream out("datorii.out");
int V[20002];
int S(int i) {return i? V[i] + S(i^i&-i): 0;}
int main()
{
int n, m; in >> n >> m;
for (int i = 1; i <= n; i++)
{int e; in >> e; V[i+(i&-i)] += V[i] += e;}
while (m--)
{
bool v; int a, b; in >> v >> a >> b;
if (v) out << S(b) - S(a-1) << '\n';
else for (; a <= n; a += a&-a) V[a] -= b;
}
}