Pagini recente » Cod sursa (job #2786657) | Cod sursa (job #3261237) | Cod sursa (job #1901977) | Cod sursa (job #1738841) | Cod sursa (job #3238006)
#include <bits/stdc++.h>
using namespace std;
ifstream f("buline.in");
ofstream g("buline.out");
int n;
long long curent, smax, P, l, L, p, x, v[401000];
int main()
{
bool culoare;
f >> n;
for(int i=1; i<=n; i++)
{
f >> v[i] >> culoare;
if(culoare)
v[i+n] = v[i];
else
v[i] = -v[i], v[i+n] = v[i];
}
smax = v[1];
P = l = L = p = 1;
for(int i=2; i<=2*n; i++)
{
if((v[i-1] + v[i] > v[i]) && l+1 < n)
v[i] += v[i-1], l++;
else
{
if(i <= n)
p = i;
else
p = i - n;
l = 1;
}
if(v[i] > smax)
smax = v[i], P = p, L = l;
}
g << smax <<" "<<P <<" "<< L;
}