Cod sursa(job #1249456)

Utilizator okros_alexandruOkros Alexandru okros_alexandru Data 26 octombrie 2014 23:36:06
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>

#define oo (1 << 30)

using namespace std;

int main() {

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

    in >> N;

    start = 0;
    end = 0;
    best = -oo;
    sum = 0;

    for(i = 1; i <= N; i++) {

        in >> x;

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

        if(best < sum)
            best = sum, start = a, end = i;


        }

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

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

    return 0;

}