Cod sursa(job #2733231)

Utilizator VladS23Vlad Seba VladS23 Data 30 martie 2021 09:54:33
Problema Buline Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <fstream>

using namespace std;

const int NMAX = 2e5;

ifstream cin("buline.in");
ofstream cout("buline.out");

int v[NMAX + 5];

int main()
{
    int n, nr, i, st = 1, dr, s = 0, maxi = 0, sol_st, sol_dr;
    bool c;
    cin >> n;
    for (int i = 1; i <= 2 * n; i++)
    {
        if (i <= n)
        {
            cin >> v[i] >> c;
            v[i] = (c == 1) ? v[i] : -v[i];
            nr = v[i];
        }
        else
            nr = v[i - n];
        if (s + nr < nr)
        {
            s = nr;
            st = i;
        }
        else if (i < st + n)
            s += nr;

        if (s > maxi)
        {
            maxi = s;
            sol_st = st;
            sol_dr = i;
        }
    }
    cout << maxi << ' ' << sol_st << ' ' << sol_dr - sol_st + 1;
}