Pagini recente » Cod sursa (job #3142984) | Cod sursa (job #2526855) | Cod sursa (job #1351608) | Cod sursa (job #2381620) | Cod sursa (job #2410229)
#include <bits/stdc++.h>
#define DIM 15005
using namespace std;
ifstream f ("datorii.in") ;
ofstream g ("datorii.out") ;
int N , M , x , a , b , cer;
int AIB[DIM] ;
void Update (int poz , int val)
{
for (int i = poz ; i <= N ; i += i & (-i))
AIB[i] += val ;
return ;
}
int Query (int poz)
{
int sum = 0 ;
for (int i = poz ; i >= 1 ; i -= i & (-i))
sum += AIB[i] ;
return sum ;
}
int main()
{
f >> N >> M ;
for (int i = 1 ; i <= N ; ++i)
{
f >> x;
Update(i,x) ;
}
for (int i = 1 ; i <= M ; ++i)
{
f >> cer >> a >> b;
if (cer == 0)
Update(a,-b);
else
g << Query(b) - Query(a-1) << '\n';
}
f.close();
g.close();
return 0;
}