사용법 #include <iostream>
#INCLUDE <cstdio>
사용 스페이스 성병;
INT의 PD, C [ 500001 ]이 [ 500001 ], X, Y, K, N, m;
INT lowbit ( INT XX)
{
반환 XX & - XX;
}
공극 업데이트 ( INT의 XX, INT의 YY)
{
동안 (XX <= N)
{
C [XX] + = YY;
XX + = lowbit (XX);
}
}
INT getsum ( INT XX)
{
INT합 = 0 ;
반면 (XX> 0 )
{
합계 + = C [XX]
XX - = lowbit (XX);
}
리턴 합;
}
INT 의 main ()
{
CIN >> >> N m;
위한 ( int로 I = 1 ; i가 <= N; 내가 ++ )
{
CIN >> A [I];
업데이트 (I, A [I]);
}
에 대해 ( int로 I = 1 ; I <= m; 내가 ++ )
{
CIN >>PD;
경우 (PD의 == 1 )
{
CIN >> X >> K;
업데이트 (X, K);
}
경우 (PD의 == 2 )
{
CIN >> >> X , Y;
COUT << getsum (Y) -getsum (X- 1 ) << ENDL;
}
}
반환 0 ;
}
여름의 14 일에 의해 2019년 9월 9일