Cod sursa(job #3238006)

Utilizator winemomComan Erin winemom Data 15 iulie 2024 10:03:48
Problema Buline Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.8 kb
#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;
}