Cod sursa(job #1251299)

Utilizator FlorinHajaFlorin Gabriel Haja FlorinHaja Data 29 octombrie 2014 11:05:31
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.7 kb
#include <fstream>
using namespace std;

long n;
int i, a[6000001], SecvCr, PozCr, Inceput, Sfarsit, Maxim;

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

    f>>n;
    for (i=1; i<=n; i++)
        f>>a[i];

    Maxim = a[1];
    SecvCr = a[1];
    PozCr = 1;
    Inceput = 1;
    Sfarsit = 1;

    for (i=2; i<=n; i++)
    {
        if (SecvCr>=0)
            SecvCr += a[i];
        else
        {
            PozCr = i;
            SecvCr = a[i];
        }
        if (SecvCr>Maxim)
        {
            Inceput = PozCr;
            Sfarsit = i;
            Maxim = SecvCr;
        }
    }

    g<<Maxim<<" "<<Inceput<<" "<<Sfarsit;
    return 0;
}