Pagini recente » Cod sursa (job #2248961) | Cod sursa (job #2774104) | Cod sursa (job #336256) | Cod sursa (job #2947965) | Cod sursa (job #1412154)
#include <cstdio>
using namespace std;
int v[200001];
int main()
{ freopen("buline.in", "r",stdin);
freopen("buline.out", "w",stdout);
int n,i,tip,sc,smax,st,stm,drm,ok,maxl,l;
scanf("%d", &n);
for(i=1; i<=n; i++){
scanf("%d%d", &v[i], &tip);
if(tip==0)
v[i]=v[i]*-1;
}
sc=smax=v[i];
st=stm=drm=1;
ok=0;
l=0;
for(i=2; i<=n && l<=n; i++){
if(sc+v[i]>v[i]){
sc=sc+v[i];
l++;
}
else{
if(ok==1)
break;
sc=v[i];
st=i;
l=1;
}
if(sc>smax){
stm=st;
maxl=l;
smax=sc;
}
if(i==n){
i=0;
ok=1;
}
}
printf("%d %d %d", smax, stm, maxl);
return 0;
}