Cod sursa(job #735469)

Utilizator mirceadinoMircea Popoveniuc mirceadino Data 16 aprilie 2012 15:34:36
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include<cstdio>
int main()
{
    int i,n,a,sum=0,bestsum=1<<31,start=1,stop=1,beststart=1,beststop=1;
    freopen("ssm.in","r",stdin);
    freopen("ssm.out","w",stdout);
    scanf("%d",&n);
    for(i=1;i<=n;i++)
    {
        scanf("%d",&a);
        if(sum+a>a)
        {
            sum=sum+a;
            stop=i;
        }
        else
        {
            start=i;
            stop=i;
            sum=a;
        }
        if(sum>bestsum || ((sum==bestsum)&&((stop-start)<(beststop-beststart))))
        {
            bestsum=sum; beststart=start; beststop=stop;
        }
    }
    printf("%d %d %d",bestsum,beststart,beststop);
    return 0;
}