Cod sursa(job #698633)

Utilizator dumitrualexAlex Dumitru dumitrualex Data 29 februarie 2012 15:21:40
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include <stdio.h>

int main()
{
    freopen("ssm.in", "r", stdin);
    freopen("ssm.out", "w", stdout);
    long n, i, smax=-(int)2e9, s=0, aux, pozi=0, pozf, pozimax;
    scanf("%d", &n);
    pozf = n;
    for (i=0; i<n; i++)
    {
        scanf("%d", &aux);
        s += aux;
        if (s > smax) smax = s,  pozf=i, pozimax=pozi;
        if (s < 0) s = 0, pozi = i+1;
    }
    printf("%d %d %d", smax, pozimax+1, pozf+1);
}