Pagini recente » Cod sursa (job #2795445) | Cod sursa (job #477871) | Cod sursa (job #502726) | Cod sursa (job #1315699) | Cod sursa (job #127821)
Cod sursa(job #127821)
#include<stdio.h>
#define NMAX 2001
long x[NMAX],a,b,i,k,l,p,poz,max,m,s,lung,n;
int main()
{
freopen("buline.in","r",stdin);
freopen("buline.out","w",stdout);
scanf("%ld",&n);
for (i=1;i<=n;i++)
{
scanf("%ld%ld",&a,&b);
if (b==0) x[i]=0-a;
else
x[i]=a;
x[n+i]=x[i];
}
s=x[1];
l=1;
p=1;
max=s;
lung=l;
poz=p;
m=n+n;
for (i=1;i<=m;i++)
if (l<=n)
{
if (s+x[i]<0)
{
if (s>max)
{
max=s;
poz=p;
lung=l;
}
s=x[i];
l=1;
p=i;
} else
{
if (s>max)
{
max=s;
poz=p;
lung=l;
}
s+=x[i];
l++;
}
}
else
{
// i=m;
l=0;
p=i;
s=0;
}
printf("%ld %ld %ld\n",max,poz,lung);
return 0;
}