Cod sursa(job #328497)

Utilizator crisojogcristian ojog crisojog Data 2 iulie 2009 12:35:35
Problema Subsecventa de suma maxima Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include<stdio.h>  
long smax,s,n,i,x,st,dr,inc,sf;  
int main()  
{  
    freopen("ssm.in","r",stdin);  
    freopen("ssm.out","w",stdout);  
    scanf("%ld",&n);  
    scanf("%ld",&x);  
    s=smax=x;  
    st=dr=1;  
    for (i=2;i<=n;i++)  
    {  
        scanf("%ld",&x);  
        if (s+x>=x)  
        {  
            dr++;  
            s+=x;  
        }  
        else  
        {  
            st=dr=i;  
            s=x;  
        }  
        if (s>smax)  
        {  
            smax=s;  
            inc=st;  
            sf=dr;  
        }  
    }  
    printf("%ld %ld %ld\n",smax,inc,sf);  
    return 0;  
}