Pagini recente » Istoria paginii utilizator/thenewnewbie | Diferente pentru info-oltenia-2019/individual/5-6 intre reviziile 2 si 1 | Diferente pentru olimpici intre reviziile 104 si 103 | Atasamentele paginii Clasament preoji2010 | Cod sursa (job #1551282)
#include <iostream>
#include <fstream>
using namespace std;
int A[15000];
ifstream fin("datorii.in");
ofstream fout("datorii.out");
int N,M;
void citire(){
fin>>N>>M;
for(int i=1; i<=N; i++)
fin>>A[i];
}
void achitare(int b ,int c){
A[b]-=c;
}
int info(int b, int c){
int S=0;
for (int i=b; i<=c; i++)
S+=A[i];
return S;
}
int x,y,z;
int main()
{
citire();
for(int j=1; j<=M; j++){
fin>>x>>y>>z;
if (x==1) cout<<info(y,z)<<"\n";
else achitare(y,z);
}
return 0;
}