Pagini recente » Cod sursa (job #1136502) | Cod sursa (job #2546907) | Cod sursa (job #391117) | Cod sursa (job #2160505) | Cod sursa (job #1496524)
#include <fstream>
using namespace std;
ifstream fin ("buline.in");
ofstream fout ("buline.out");
int n, poz, lg, V[400010];
bool value;
int main()
{
fin >> n;
for (int i = 1; i <= n; i++)
{
fin >> V[i] >> value;
if (value == 0) V[i] *= (-1);
}
for (int i = n + 1; i < n + n; i++)
{
V[i] = V[i - n];
}
long long s = 0, sum = -1000000;
int p1 = 0;
for (int i = 1; i < n + n; i++)
{
if (s < 0)
{
s = V[i];
p1 = i;
}
else
{
s += V[i];
}
if (s > sum)
{
sum = s;
poz = p1;
lg = i - poz + 1;
}
}
fout << sum << ' ' << poz << ' ' << lg << '\n';
fout.close();
return 0;
}