Cod sursa(job #2502652)

Utilizator MirunaStefaniaLupascu Miruna-Stefania MirunaStefania Data 1 decembrie 2019 12:52:53
Problema Subsecventa de suma maxima Scor 95
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.68 kb
#include <iostream>
#include<fstream>
#define N 1005
#include<algorithm>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");



void solve()
{
    int i,smax,lgmax,lg,s,x,n;
    int pozmax;///pozitia ultimului element din secventa
    fin>>n>>x;
    smax=s=x;lgmax=lg=1;pozmax=1;
    for(i=2;i<=n;++i)
    {
        fin>>x;
        if(s>0)
        {
            s+=x;lg++;
            if(s>smax)smax=s,lgmax=lg,pozmax=i;
        }
        else
        {
            s=x;lg=1;
            if(s>smax)smax=s,lgmax=lg,pozmax=i;
        }
    }
    fout<<smax<<" "<<pozmax-lgmax+1<<" "<<pozmax;

}

int main()
{
    solve();

    return 0;
}