Cod sursa(job #1333774)

Utilizator okros_alexandruOkros Alexandru okros_alexandru Data 3 februarie 2015 15:53:12
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>

#define oo (1 << 30)

using namespace std;

int main() {

    int i, a, x, sum, best, start, end, N;
    ifstream in("ssm.in");
    ofstream out("ssm.out");

    best = -oo;
    sum = 0;

    in >> N;
    for(i = 1; i <= N; i++) {
        in >> x;

        if(sum < 0)
            sum = 0, a = i;
        sum += x;

        if(sum > best) {
            best = sum;
            start = a;
            end = i;
        }

    }

    out << best << ' ' << start << ' ' << end << '\n';

    in.close();
    out.close();

    return 0;

}