Pagini recente » Cod sursa (job #304834) | Cod sursa (job #76616) | Cod sursa (job #396974) | Cod sursa (job #2793679) | Cod sursa (job #2284779)
#include <fstream>
#include <queue>
#include <algorithm>
# define inf 1000001
using namespace std;
ifstream fin("datorii.in");
ofstream fout("datorii.out");
int i,n,m,a,b,t,z[15001];
void update(int p, int val)
{
for(;p<=n;p+=p&(-p))z[p]+=val;
}
int quarry(int p)
{
int r=0;
for(;p>=1;p-=p&(-p))r+=z[p];
return r;
}
int main(){
fin>>n>>m;
for(i=1;i<=n;i++){fin>>a;update(i,a);}
for(i=1;i<=m;i++)
{
fin>>t>>a>>b;
if(t==0)
update(a, -b);
else
fout<<quarry(b)-quarry(a-1)<<"\n";
}
return 0;
}