Pagini recente » Cod sursa (job #2340495) | Cod sursa (job #2616969) | Cod sursa (job #561283) | Cod sursa (job #290089) | Cod sursa (job #1075541)
#include <fstream>
using namespace std;
ifstream f("aib.in");
ofstream g("aib.out");
int v[100000],v1[100000],a,b,x,k,m,p,ok;
long N,M,i,j;
int main()
{f>>N>>M;
for(i=1;i<=N;i++) {f>>v[i];v1[i]=v[i]+v1[i-1];}
for(i=1;i<=M;i++) {f>>x;
switch(x){
case 0:{f>>a>>b;
v[a]=v[a]+b;
for(j=a;j<=N;j++)v1[j]=v1[j]+b;break;}
case 1:{f>>a>>b;if(a!=b)g<<v1[b]-v1[a-1]<<'\n';
else g<<v[a]<<'\n';break;}
case 2:{f>>a;ok=0;for(j=1;j<=N;j++)if(v1[j]==a){k=j;g<<k<<'\n';ok=1;}if(ok==0)g<<-1<<'\n';break;}
}
}
return 0;
}