Cod sursa(job #367846)

Utilizator klamathixMihai Calancea klamathix Data 23 noiembrie 2009 17:15:22
Problema Secventa 2 Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include<cstdio>
#define maxn 100005

int A[maxn] , B[maxn];
int i , j , n , k , start , end ,minim = 100000000 , maxs = -100000000 ,pozmin;

int main()
{
	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] ) , B[i] = B[i - 1] + A[i];
	
	for( i = 1 ; i <= n - k + 1; ++i ){
		if ( B[i] < minim ) minim = B[i] , pozmin = i;
		if ( B[i + k - 1] - minim > maxs ) {
			maxs = B[i + k - 1] - minim;
			start = pozmin + 1 , end = i + k - 1;
		}
	}	
	printf("%d %d %d",start,end,maxs);
	
return 0;
}