Cod sursa(job #1800117)

Utilizator waren4Marius Radu waren4 Data 7 noiembrie 2016 13:03:17
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include <iostream>
#include <fstream>

using namespace std;
int a[6000001];
int main()
{
    ifstream f("ssm.in"); ofstream g("ssm.out");
    int n,j,x,y,i; int m,s;
    f>>n;
    for(i=1;i<=n;i++) {f>>a[i];}
    i=1;
    m=a[1];
    s=0;
    i=1;
    j=1;
    while(i<=n)
    {
        s=s+a[i];
        if ((s>m) || ((s==m) && (y-x>i-j))) {m=s;x=j;y=i;}
        if (s<0) {s=0;j=i+1;}
        i++;
    }
    g<<m<<" "<<x<<" "<<y;
    return 0;
}