Cod sursa(job #1194121)

Utilizator Cristian1997Vintur Cristian Cristian1997 Data 2 iunie 2014 21:24:25
Problema Subsecventa de suma maxima Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
using namespace std;
#include <fstream>
ifstream fin("ssm.in");
ofstream fout("ssm.out");


int main()
{
    int i, n, a, s=0, smax=0, x=1, xmax, y, ymax;
    fin>>n;
    for(i=1; i<=n; ++i)
    {
        fin>>a;
        if(a+s>0) s+=a;
        else x=i+1, s=0;
        if(s>smax) xmax=x, ymax=i, smax=s;
        else if(s==smax && ymax-xmax>i-x) xmax=x, ymax=i;
    }
    fout<<smax<<' '<<xmax<<' '<<ymax<<'\n';
    return 0;
}