Pagini recente » Cod sursa (job #1128822) | Borderou de evaluare (job #1551118) | Cod sursa (job #8623) | Cod sursa (job #1345510) | Cod sursa (job #303226)
Cod sursa(job #303226)
#include <stdio.h>
int i,n,smax=-30000,s,lung,lungmax,poz=1,imax;
int v[400200];
int main ()
{
freopen ("buline.in","r",stdin);
freopen ("buline.out","w",stdout);
scanf ("%d",&n);
for (i=1;i<=n;i++){
int nr,cul;
scanf ("%d %d",&nr,&cul);
if (cul==0) v[i]=-nr;
else v[i]=nr;
v[n+i]=v[i];
}
for (i=1;i<=2*n;i++){
s=s+v[i];
lung++;
if (s>smax){
smax=s;
lungmax=lung;
imax=poz;
}
if (s<=0) {
s=lung=0;
poz=i+1;
}
if (lung==n) break;
}
if (imax>n) imax-=n;
printf ("%d %d %d",smax,imax,lungmax);
return 0;
}