Cod sursa(job #2409567)

Utilizator Vlad1234Silaghi Vlad Vlad1234 Data 19 aprilie 2019 11:04:48
Problema Subsecventa de suma maxima Scor 85
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.67 kb
#include <iostream>
#include <fstream>

using namespace std;

int indiceStart,v[6000000], indiceFinal, Smin, Smax, n, S, q, x;

int main()
{
    ifstream in ("ssm.in");
    ofstream out ("ssm.out");

    in >> n;
    in >> x;
    S = x;
    Smin = S;
    q+=S;
    for(int i = 1; i < n; i++)
    {
        in >> x;
        S+=x;
        if(S < Smin)
        {
           Smin = S;
           indiceStart = i + 1;
           q = 0;
        }
        else
          q+=x;
        if(q > Smax)
        {
            Smax = q;
            indiceFinal = i + 1;
        }
    }
    out << Smax << " " << indiceStart + 1 << " " << indiceFinal;
    return 0;
}