Pagini recente » Cod sursa (job #228159) | Cod sursa (job #2935171) | Cod sursa (job #2216225) | Cod sursa (job #1225651) | Cod sursa (job #1339394)
#include <fstream>
using namespace std;
ifstream fin("datorii.in");
ofstream fout("datorii.out");
int n,m,a,b,aux,i,tip,s,aib[20000];
void Achitare(int zi,int val)
{
for(int i=zi;i<=n;i+=i&-i)
{
aib[i]-=val;
}
}
int Interogare(int x)
{
int s=0;
for(int i=x;i;i-=i&-i)
{
s+=aib[i];
}
return s;
}
int main()
{
fin>>n>>m;
for(i=1;i<=n;++i)
{
fin>>aux;
Achitare(i,-aux);
}
for(i=1;i<=m;++i)
{
fin>>tip;
if(tip==0)
{
fin>>a>>b;
Achitare(a,b);
}
else
{
fin>>a>>b;
fout<<Interogare(b)-Interogare(a-1)<<'\n';
}
}
return 0;
}