Cod sursa(job #2959663)

Utilizator SkaduweePavel Bogdan Stefan Skaduwee Data 2 ianuarie 2023 10:59:23
Problema Subsecventa de suma maxima Scor 95
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>

using namespace std;

const int NMAX = 6000001;
long long s[NMAX], mini, indmin = 0, sol = 0;
int st = 1, dr = 1, n;

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

    fin >> n;
    s[0] = 0;

    for (int i = 1; i <= n; i++){
        int a;
        fin >> a;
        s[i] = s[i-1] + a;
        if (s[i] < mini)
        {
            indmin = i;
            mini = s[i];
        }
        if (s[i] - mini> sol)
        {
            st = indmin+1;
            dr = i;
            sol = s[i] - mini;
        }
    }

    fout << sol << " " << st << " " << dr;
    return 0;
}