Cod sursa(job #2377752)

Utilizator dan.ghitaDan Ghita dan.ghita Data 11 martie 2019 03:51:06
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.63 kb
#include <bits/stdc++.h>

using namespace std;

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

int n, x, v[6000006], spart[6000006];

int main()
{
    f >> n;

    for(int i = 1; i <= n; ++i)
        f >> x,
        v[i] = x,
        spart[i] = x + spart[i - 1];

    int minIndex = 0, mx = INT_MIN, l, r;
    for (int i = 1; i <= n; ++i)
    {
        int sum = spart[i] - spart[minIndex];
        if (sum > mx)
            mx = sum,
            l = minIndex,
            r = i;

        minIndex = spart[minIndex] > spart[i] ? i : minIndex;
    }

    g << mx << ' ' << l + 1 << ' ' << r;

    return 0;
}