Cod sursa(job #2270191)

Utilizator AlexandruBrezuleanuAlexandruBrezuleanu AlexandruBrezuleanu Data 27 octombrie 2018 10:02:47
Problema Subsecventa de suma maxima Scor 80
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.53 kb
#include <fstream>
#define MAX 6000010
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int v[MAX];
int d[MAX];
long long int n,i,maxim;
int st=1,dr;
int main()
{
    fin>>n;
    for(i=1;i<=n;i++)
    {
        fin>>v[i];
        if(d[i-1]+v[i]>v[i])
            d[i]=d[i-1]+v[i];
        else
            {d[i]=v[i];
             st=i;
            }
        if(d[i]>=maxim)
        {
            maxim=d[i];
            dr=i;
        }
    }
    fout<<maxim<<' '<<st<<' '<<dr;;
    return 0;
}