Cod sursa(job #2961685)

Utilizator rastervcrastervc rastervc Data 6 ianuarie 2023 21:01:51
Problema Subsecventa de suma maxima Scor 95
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.6 kb
#include <iostream>
#include <fstream>
#include <climits>

using namespace std;

ifstream fin("ssm.in");
ofstream fout("ssm.out");

long long N, i, x, S, mn, ans;
long long l, r, mnl;

int main() {
    mn = INT_MAX;

    fin >> N;
    for (i = 1; i <= N; ++i) {
        fin >> x;
        S += x;
        if (ans < S - mn) {
            ans = S - mn;
            l = mnl + 1;
            r = i;
        }

        if (S < mn) {
            mnl = i;
            mn = S;
        }
    }

    fout << ans << ' ' << l << ' ' << r;

    fin.close();
    fout.close();
    return 0;
}