Cod sursa(job #1495318)

Utilizator Burbon13Burbon13 Burbon13 Data 2 octombrie 2015 21:52:59
Problema Subsecventa de suma maxima Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <cstdio>

using namespace std;

int main() {
    freopen("ssm.in", "r", stdin);
    freopen("ssm.out", "w", stdout);

    int n, x, sc, sf, first = 1, last = 1, prim = 1;
    scanf("%d%d", &n, &x);
    sc = sf = x;

    for(int i = 2; i <= n; ++ i) {
        scanf("%d", &x);
        if(x + sc >= x) {
            sc += x;
        } else {
            sc = x;
            prim = i;
        }
        if(sc > sf) {
            sf = sc;
            last = i;
            first = prim;
        }
    }

    printf("%d %d %d", sf, first, last);

    return 0;
}