Pagini recente » Statisticile problemei Ghizi | Cod sursa (job #196580) | Cod sursa (job #3300291) | Cod sursa (job #3297453) | Cod sursa (job #1425353)
#include <fstream>
#define DIM 16000
using namespace std;
ifstream fin ("datorii.in" );
ofstream fout("datorii.out");
int N, M, i, j, k, ok, minim;
int aib[DIM], cod, X, Y;
void Update(int A, int B){
for(A = A; A <= N; A += (A&(-A)))
aib[A] += B;
return;
}
int Query(int A){
int val = 0;
for(A = A; A >= 1; A -= (A&(-A)))
val += aib[A];
return val;
}
void SetUp(){
fin >> N >> M;
for(i = 1; i <= N; i ++){
fin >> X;
Update(i, X);
}
return;
}
void CodeExpert(){
for(i = 1; i <= M; i ++){
fin >> cod >> X >> Y;
switch(cod)
{
case 0:{Update(X,-Y);break;}
case 1:{fout << Query(Y) - Query(X-1) << "\n";break;}
}
}
return;
}
int main(){
SetUp();
CodeExpert();
return 0;
}