Pagini recente » Cod sursa (job #1958303) | Cod sursa (job #1841475) | Cod sursa (job #725138) | Cod sursa (job #1933707) | Cod sursa (job #1630390)
#include <fstream>
using namespace std;
int aib[15010],i,j,n,m,q,p,x;
ifstream fin("datorii.in");
ofstream fout("datorii.out");
int zero( int x )
{
return ( x & (-x) );
}
void up( int pos, int val )
{
int i;
for( i = pos ; i <= n ; i += zero( i ) )
aib[ i ] += val;
}
int qr( int x )
{
int i,ans=0;
for( i = x ; i > 0 ; i -= zero( i ) )
ans += aib[ i ];
return ans;
}
int main()
{
fin>>n>>m;
for( i = 1 ; i <= n ; i++ )
{
fin>>x;
up( i , x );
}
for( i = 1 ; i <= m ; i++ )
{
fin>>q>>p>>j;
if( q == 0 )
{
up( p , -j );
}
else
{
fout<<qr( j )-qr( p - 1 )<<'\n';
}
}
return 0;
}