Cod sursa(job #1805541)

Utilizator doruliqueDoru MODRISAN dorulique Data 13 noiembrie 2016 22:33:54
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.61 kb
#include<cstdio>
#include<climits>

int main()
{
    int x,smax=INT_MIN,a=1,amax,bmax,sc=0,n,i;
    FILE *f=fopen("ssm.in","r");
    fscanf(f,"%d",&n);
    for(i=1;i<=n;i++)
    {
        fscanf(f,"%d",&x);
        if(sc<0)
            {sc=x;a=i;}
        else
            if(sc+x>=0)sc+=x;
            else {sc=x;a=i;}
        if(sc>smax)
        {
            smax=sc;
            amax=a;
            bmax=i;
        }
        else if(sc==smax)
            if(i-a>bmax-amax){amax=a;bmax=i;}
    }
    fclose(f);f=fopen("ssm.out","w");
    fprintf(f,"%d %d %d",smax,amax,bmax);
    return 0;
}