Cod sursa(job #2279466)

Utilizator CristeaCristianCristea Cristian CristeaCristian Data 9 noiembrie 2018 16:41:30
Problema Subsecventa de suma maxima Scor 95
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>

using namespace std;
const int NMAX= 6000000;
int x[NMAX+5];
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int main()
{
    long long s,smax,n,i,ic,im,sfm;
    fin>>n;
    for(i=1;i<=n;i++)
    fin>>x[i];
    s=smax=x[1];
    ic=im=sfm=1;
    for(i=2;i<=n;i++)
    {
        if(s+x[i]>x[i])
            s=s+x[i];
        else
        {
            s=x[i];
            ic=i;
        }
        if(s>smax)
        {
            smax=s;
            im=ic;
            sfm=i;
        }
    }
    fout<<smax<<' '<<im<<' '<<sfm;
    return 0;
}