Pagini recente » Cod sursa (job #800174) | Cod sursa (job #628526) | Cod sursa (job #2875875) | Cod sursa (job #2108838) | Cod sursa (job #46958)
Cod sursa(job #46958)
#include<stdio.h>
long p,max,poz,lung,x[200001],b,a,n,m,j,k,l,i,q,w,z,s;
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;
}
for (i=1;i<n;i++)
x[n+i]=x[i];
max=-10;
m=x[1];
poz=1;
lung=1;
l=1;
p=1;
for (i=2;i<n+n;i++)
{
l++;
m+=x[i];
if (m<0||l>n) {if (m>max&&l<=n) {max=m; lung=l; poz=p; }m=0; l=0; p=i+1; }
else
{
if (m>max&&l<=n) {max=m; lung=l; poz=p; }
}
}
printf("%ld %ld %ld\n",max,poz,lung);
return 0;
}