Cod sursa(job #3275079)

Utilizator tudortica28Tudor Tica tudortica28 Data 9 februarie 2025 10:42:51
Problema Buline Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.87 kb
#include <bits/stdc++.h>

using namespace std;

int main(void)
{
    ifstream cin("buline.in");
    ofstream cout("buline.out");
    
    int n, v[200000], s = 0, st = 0, l = 0, smax = INT_MIN, stmax, semn, lmax;
    cin >> n;
    
    for (int i = 0; i < n; i++) {
        cin >> v[i] >> semn;
            
        if (!semn)
            v[i] *= -1;
    }
    
    for (int j = 0; j <= 1; j++)
        for (int i = 0; i < n; i++) {
            if (j == 1 && i == st)
                break;
            
            if (v[i] > s + v[i]) {
                st = i;
                l = 1;
            } else
                l++;
            
            s = max(v[i], s + v[i]);
            
            if (s > smax) {
                smax = s;
                lmax = l;
                stmax = st;
            }
        }
    
    cout << smax << ' ' << ++stmax << ' ' << lmax;

    return 0;
}