Pagini recente » Cod sursa (job #2609771) | Cod sursa (job #3215676) | Cod sursa (job #2397317) | Cod sursa (job #37605) | Cod sursa (job #303236)
Cod sursa(job #303236)
#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++) printf ("%d ",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 || lung==n) {
s=lung=0;
poz=i+1;
}
}
if (imax>n) imax-=n;
printf ("\n%d %d %d",smax,imax,lungmax);
return 0;
}