Pagini recente » Cod sursa (job #2694112) | Cod sursa (job #2130524) | Cod sursa (job #2111929) | Cod sursa (job #906413) | Cod sursa (job #1690011)
#include <fstream>
#define zero(x) ((x ^ ( x - 1 ) ) & x )
using namespace std;
ofstream fout ("datorii.out");
ifstream fin ("datorii.in");
int aib[100005],n,q,a,b;
int ad (int poz , int val)
{
for( ; poz <= n ; poz += zero(poz))
aib[ poz ] += val;
return 1;
}
int queri (int poz)
{
int suma = 0;
for( ; poz > 0 ; poz -= zero(poz))
suma += aib[ poz ];
return suma;
}
int main()
{
fin>>n>>q;
for(int i = 1 ; i <= n ; i++)
{
int aux;
fin>>aux;
ad( i , aux );
}
for(int i = 1 ; i <= q ; i++)
{
int aux ;
fin>>aux;
if( aux == 0)
{
fin>>a>>b;
ad( a , -b);
}
else if (aux == 1)
{
fin>>a>>b;
fout<<queri( b ) - queri( a - 1 )<<'\n';
}
}
return 0;
}