Cod sursa(job #542913)

Utilizator vladtarniceruVlad Tarniceru vladtarniceru Data 27 februarie 2011 10:17:50
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
# include <stdio.h>
long s1, s2, n, k, i, a[50005], min = 2000000000, sol = -2000000000, pmin, st, dr;
int main (){
    freopen ("secv2.in", "r", stdin);
    freopen ("secv2.out", "w", stdout);
    scanf ("%ld%ld", &n, &k);
    for (i = 1; i <= n; ++i)
	scanf ("%ld", &a[i]);
    for (i = 1; i < k; ++i){
	s1 += a[i];
    }
    for (i = k; i <= n; ++i){
	s2 += a[i - k];
	s1 += a[i];
	if (min > s2){
	    min = s2;
	    pmin = i - k + 1;
	}
	if (sol < s1 - min){
	    sol = s1 - min;
	    dr = i;
	    st = pmin;
	}
    }
    printf ("%ld %ld %ld", st, dr, sol);
    return 0;
}