Pagini recente » Cod sursa (job #433327) | Cod sursa (job #1144913) | Istoria paginii runda/fewfewd/clasament | Cod sursa (job #2418791) | Cod sursa (job #1310600)
#include <iostream>
#include <vector>
#include <cmath>
#include <ctime>
#include <cstdio>
#include <queue>
#include <set>
#include <map>
#include <fstream>
#include <cstdlib>
#include <string>
#include <cstring>
#include <algorithm>
#include <numeric>
#define ll long long int
#define punct pair<ll,ll>
#define mp make_pair
#define MOD 10000007
#define NMAX 505
using namespace std;
ifstream f("datorii.in");
ofstream g("datorii.out");
int n,Q,i,j,v[15001],s,t,x,y;
int main()
{
f>>n>>Q;
for(i=1;i<=n;++i)
{
f>>t;
for(j=i;j<=n;j+=j&-j)
v[j]+=t;
}
while(Q--)
{
f>>t;
if (t==0)
{
f>>x>>y;
for (i=x;i<=n;i+=i&-i)
v[i]-=y;
}
else
{
f>>x>>y;s=0;
for (i=y;i;i-=i&-i)
s+=v[i];
for (i=x-1;i;i-=i&-i)
s-=v[i];
g<<s<<'\n';
}
}
return 0;
}