Pagini recente » Cod sursa (job #1427464) | Cod sursa (job #618971) | Cod sursa (job #2138712) | Cod sursa (job #332563) | Cod sursa (job #2733261)
#include <fstream>
using namespace std;
ifstream fin("buline.in");
ofstream fout("buline.out");
int v[200002];
int main()
{
int n,i,st,stmax,drmax,sc,smax,x,l,lm,j;
fin>>n;
for(i=1;i<=n;i++)
{
fin>>v[i]>>x;
if(x==0)
v[i]=v[i]*(-1);
}
st=stmax=drmax=1;
sc=smax=v[1];
lm=n;
for(j=1;j<=2;j++)
{
if(j==2)
i=1;
else
i=2;
while(i<=n)
{
if(j==2 && i==stmax)
break;
if(sc+v[i]<v[i])
{
sc=v[i];
st=i;
l=1;
}
else
{
sc=sc+v[i];
l++;
}
if(sc>smax)
{
smax=sc;
stmax=st;
drmax=i;
lm=l;
}
else
if(sc==smax)
if(l<lm)
{
lm=l;
smax=sc;
stmax=st;
drmax=i;
}
i++;
}
}
fout<<smax<<" "<<stmax<<" "<<lm;
return 0;
}