Cod sursa(job #595411)

Utilizator Athena99Anghel Anca Athena99 Data 12 iunie 2011 15:00:43
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <stdio.h>

int main()
{
    int n=0,c=0,i=0,in=0,smax=-32767,s=0,g=0,t=0;
    freopen("ssm.in","r",stdin);
    freopen("ssm.out","w",stdout);
    scanf("%d",&n);
    for (i=0; i<n; ++i)
    {
        scanf("%d",&c);
        s+=c;
        if (s<0 && s>smax)
        {
            smax=s;
            s=0;
            in=i;
            g=i;
            t=i;
        }
        else if (s<0 && s<smax)
        {
            g=i+1;
            s=0;
        }
        else if (s>smax)
        {
            in=g;
            t=i;
            smax=s;
        }
    }
    printf("%d %d %d",smax,in+1,t+1);
    return 0;
}