Cod sursa(job #1769818)

Utilizator eragon0502Dumitrescu Dragos eragon0502 Data 3 octombrie 2016 11:10:04
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <cstdio>

using namespace std;
int v[6000005];
int main()
{
    freopen("ssm.in","r",stdin);
    freopen("ssm.out","w",stdout);
    int sc,smax=1<<31,n,i,imax,x,inc,incmax;
    scanf("%d",&n);
    smax=(-1)*smax;
    sc=0;
    inc=1;
    for(i=1; i<=n; ++i)
    {
        scanf("%d",&v[i]);
        x=v[i];
        if(x<=sc+x)
            sc+=x;
        else
        {
            sc=x;
            inc=i;
        }
        if(sc>smax)
        {
            smax=sc;
            imax=i;
            incmax=inc;
        }
    }
    printf("%d %d %d\n",smax,incmax,imax);
    return 0;
}