Pagini recente » Cod sursa (job #2393758) | Cod sursa (job #1417822) | Cod sursa (job #1084607) | Cod sursa (job #1249132) | Cod sursa (job #2601573)
#include <fstream>
using namespace std;
ifstream in("datorii.in");
ofstream out("datorii.out");
int aib[15001];
int n;
int len(int x)
{
return (x & (-x));
}
void achit(int poz, int val)
{
for(int i=poz;i<=n;i+=len(i))
{
aib[i]+=val;
}
}
int querry(int poz)
{ int s=0;
for(int i=poz;i>0;i-=len(i))
s+=aib[i];
return s;
}
int main()
{
bool op;
int m,i,a,v,t;
in>>n>>m;
for(i=1;i<=n;i++)
{
in>>a;
achit(i,a);
}
for(i=1;i<=m;i++)
{
in>>op>>v>>t;
if(op==0)
{
achit(t,-v);
}
else
{
out<<(querry(t)-querry(v-1))<<'\n';
}
}
return 0;
}