Cod sursa(job #1922567)

Utilizator ShutterflyFilip A Shutterfly Data 10 martie 2017 17:54:14
Problema Subsecventa de suma maxima Scor 55
Compilator cpp Status done
Runda Arhiva educationala Marime 0.71 kb
#include <iostream>
#include <stdio.h>
using namespace std;

long long best[1000001];
long long buffer[1000001];
int maxSUM = 0, minSUM = 1000000;
int mx, mi, begi;
int SUM;

int main () {
    freopen("ssm.in", "r", stdin);
    freopen("ssm.out", "w", stdout);
    int Load;
    cin >> Load;
    cin >> best[0];
    for (int i = 1; i < Load; i++) {
        cin >> buffer[i];
        if (best [i - 1] >= 0)
            best[i] = best[i-1] + buffer[i];
        else {
            best[i] = buffer[i];
            begi = i;
        }

        if (best[i] > maxSUM) {
            maxSUM = best[i], mx = i; mi = begi;
        }
    }

    cout << best[mx] << " " << begi + 1 << " " << mx + 1;
}