Cod sursa(job #260994)

Utilizator AndreiDDiaconeasa Andrei AndreiD Data 17 februarie 2009 19:59:59
Problema Subsecventa de suma maxima Scor 95
Compilator c Status done
Runda Arhiva educationala Marime 0.6 kb
#include <stdio.h>

int N,inceput,sfarsit,i,j,max,sum,v[7000001],poz;

int main()
{
    freopen("ssm.in","r",stdin);
    scanf("%d",&N);
    for (i=1;i<=N;++i)
         scanf("%d", &v[i]);

    max=v[1];
    sum=v[1];
    for (i=2;i<=N;++i)
    {
        if (sum>0)
             sum+=v[i];
        else 
        {
            sum=v[i];
            poz=i;
        }
        if (sum>max)
        {
            max=sum;
            inceput=poz;
            sfarsit=i;   
        }
    }
    freopen("ssm.out","w",stdout);
    printf("%d %d %d", max,inceput,sfarsit);
    return 0;
}