Cod sursa(job #608765)

Utilizator vlad2901Vlad Berindei vlad2901 Data 17 august 2011 22:20:55
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.96 kb
#include <stdio.h>
#define MAX 50001
#define VALMAX 25001

int a[MAX], sum[MAX], n, k;

int main()
{
    int min = VALMAX * MAX;
    int max = -VALMAX * MAX;
    int start, end, minstart, i;

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

    scanf("%d %d", &n, &k);

    for(i=1;i<=n;++i)
    {
        scanf("%d", &a[i]);
    }

    sum[0] = 0;

    for(i=1;i<=n;++i)
    {
        sum[i] += sum[i-1] + a[i];
    }
/*
    for(i=1;i<k;++i)
    {
        if(min > sum[i])
        {
            min = sum[i];
            minstart = i+1;
        }
    }
*/
    for(i=k;i<=n;++i)
    {
        if(min > sum[i-k])
        {
            min = sum[i-k];
            minstart = i-k+1;
        }

        if(max < sum[i] - min)
        {
            max = sum[i] - min;
            start = minstart;
            end = i;
        }
    }

    printf("%d %d %d", start, end, max);

    return 0;
}