Pagini recente » Cod sursa (job #515015) | Cod sursa (job #1015234) | Cod sursa (job #1642434) | Cod sursa (job #2708779) | Cod sursa (job #3164923)
#include <fstream>
using namespace std;
ifstream fin ("buline.in");
ofstream fout ("buline.out");
int n,ok,i,stt1,stt2,lg1,lg2,dr2,st1,st2;
long long x,sum,smin,smax,s1,s2;
int main ()
{
fin>>n>>x>>ok;
if (ok==0)
x=-x;
sum+=x;
smin=smax=x;
for (i=2; i<=n; i++)
{
fin>>x>>ok;
if (ok==0)
x=-x;
sum+=x;
if (s1+x<x)
{
s1=x;
stt1=i;
}
else
s1+=x;
if (s2+x>x)
{
s2=x;
stt2=i;
}
else
s2+=x;
if (s1>smax)
{
smax=s1;
st1=stt1;
lg1=i-st1+1;
}
if (s2<smin)
{
smin=s2;
st2=stt2;
dr2=i;
lg2=i-st2+1;
}
}
dr2++;
if (dr2>n)
dr2=1;
if (smax>sum-smin||(smax==sum-smin&&st1<dr2))
fout<<smax<<" "<<st1<<" "<<n-lg1;
else
fout<<sum-smin<<" "<<dr2<<" "<<n-lg2;
return 0;
}