Cod sursa(job #649416)

Utilizator GagosGagos Radu Vasile Gagos Data 15 decembrie 2011 23:47:17
Problema Subsecventa de suma maxima Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include <cstdio>
#include <limits>

int main()
{
    int N, A, b = 0, max_s = INT_MIN, min_s = INT_MAX, si = 0, sj = 0, i = 0, j = 0;

    freopen("ssm.in", "r", stdin);
    freopen("ssm.out", "w", stdout);

    scanf("%d", &N);

    for (int it = 1; it <= N; ++it)
    {
        scanf("%d", &A);
        
        si += A;
        sj += b;
        b = A;
        
        if (si >= max_s)
        {
            max_s = si;
            i = it;
        }
        else if (it > 0 && sj < min_s)
        {
            min_s = sj;
            j = it - 1;
        }
    }

    printf("%d %d %d", max_s - min_s, j + 1, i);

    fcloseall();

    return 0;
}