Cod sursa(job #27619)

Utilizator diana_sandrudienutza sandru diana_sandru Data 6 martie 2007 21:15:52
Problema Buline Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include<fstream.h>
ifstream f("buline.in");
ofstream g("buline.out");
int i,j,m,x,li,l,y;
long n,smax,a[100000],b[100000];
int main()
{
f>>n;
for(i=1;i<=n;i++)
{
f>>a[i]>>x;
if(x==0)
a[i]=0-a[i];
}
for(i=1;i<n;i++)
a[i+n]=a[i];
b[1]=a[1];
li=1;
smax=b[1];
l=1;
for(i=2;i<=2*n-1;i++)
{
if(b[i-1]+a[i]>a[i]&&i-li<n)
{
l++;
b[i]=b[i-1]+a[i];
}
else
{
l=1;
li=i;
b[i]=a[i];
}
if(b[i]>smax)
{
smax=b[i];
x=li;
y=l;
}
}
g<<smax<<" "<<x<<" "<<y<<"\n";
f.close();
g.close();
}