Cod sursa(job #1650559)

Utilizator crysstyanIacob Paul Cristian crysstyan Data 11 martie 2016 19:03:24
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>
#include <algorithm>
#define inf 2000000000

using namespace std;

ifstream f("ssm.in");
ofstream g("ssm.out");

int i, n, st = 1, best = -inf, el, bestst, bestdr, s = 0;

int main()
{
    f >> n;

    for (i = 1; i <= n; ++ i)
    {
        f >> el;

        if (s < 0)
        {
            s = el;
            st = i;
        }
        else
            s += el;

        if (s > best)
        {
            bestst = st;
            bestdr = i;
            best = s;
        }
    }

    g << best << " " << bestst << " " << bestdr << '\n';
    return 0;
}