Pagini recente » Cod sursa (job #2591559) | Cod sursa (job #1463411)
#include <fstream>
using namespace std;
ifstream fin ("buline.in");
ofstream fout ("buline.out");
int main()
{
int mx= -1000000, a=0, n=0, p=0, tr =0, s=0, ii=0, l=0, inc=0, fnl=0, y, m[400001], ult =-1;
fin >> n;
for (int i = 1; i<=n; i++)
{
fin >> a;
fin >> y;
if (y == 0)a*=-1;
m[i]=a;
m[n+i]=a;
}
for (int i = 1; i<=2*n; i++)
{
a = m[i];
if (i == 1)p= a;
else if (p < 0 || i == ult)
{
ult = i + n-1;
ii = i;
if (tr == 0)
{
s=p;
l = i;
}
p = a;
tr = 1;
}
else p+=a;
if (p > mx)
{
inc = ii;
fnl = i -ii + 1;
mx = p;
}
}
fout << mx << ' ' << inc << ' ' << fnl;
return 0;
}