Cod sursa(job #261014)

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

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

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

    max=0;
    sum=0;
    for (i=1;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;
}