Cod sursa(job #1442331)

Utilizator DeehoroEjkoliPop Darian DeehoroEjkoli Data 25 mai 2015 09:19:05
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
#include <iostream>
#include <fstream>

using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");

int mx, mxNeg, ltN, s, ltL, ltR, limitL;
bool ok;

int main()
{
    int n;
    f >> n;
    for (int i = 1; i <= n; i++) {
        int x;
        f >> x;
        if (x > 0) ok = true;
        if (mxNeg < x) {
                mxNeg = x;
                ltN = i;
        }
        s += x;
        if (s < 0) {
            s = 0;
            limitL = i;
        }
        if (mx < s) {
                mx = s;
                ltL = limitL;
                ltR = i;
        }
    }
    if (ok == true) g << mx << " " << ltL + 1 << " " << ltR;
    else g << mxNeg << " " << ltN << " " << ltN;
    return 0;
}