Cod sursa(job #1262007)

Utilizator flore77Simion Florentin flore77 Data 12 noiembrie 2014 21:58:17
Problema Subsecventa de suma maxima Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include <fstream>
#include <iostream>
using namespace std;

int main() {
    ifstream in("ssm.in");
    ofstream out("ssm.out");
    int n, x, suma = 0, maxim = -int(2e10), i, beginIndex, begin, end;
    in >> n;
    for (i = 0; i < n; ++i) {
        in >> x;
        if (suma < 0) {
            suma = x;
            beginIndex = i;
        }
        else {
            suma += x;
        }
        if (suma > maxim) {
            maxim = suma;
            begin = beginIndex;
            end = i;
        }
    }
    out << maxim << " " << begin << " " << end;
    in.close();
    out.close();
    return 0;
}