Cod sursa(job #2001691)

Utilizator alextodoranTodoran Alexandru Raul alextodoran Data 17 iulie 2017 15:07:35
Problema Subsecventa de suma maxima Scor 65
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include <iostream>
#include <fstream>
using namespace std;
long long n,x[16000002],d[6000002],i,mx,e;
int main()
{
    ifstream fin ("ssm.in");
    ofstream fout ("ssm.out");
    fin>>n;
    x[0]=-1;
    for(i=1;i<=n;i++)
    {
        fin>>x[i];
        d[i]=max(x[i],d[i-1]+x[i]);
        if(d[i]>mx){mx=d[i];e=i;}
    }
    fout<<mx<<" ";
    i=e;
    while(d[i]==d[i-1]+x[i])i--;
    fout<<i<<" "<<e;
    return 0;
}