Cod sursa(job #568151)

Utilizator rootsroots1 roots Data 30 martie 2011 21:04:30
Problema Secventa 2 Scor 50
Compilator cpp Status done
Runda 102 Marime 0.54 kb
#include <stdio.h>

#define Dim 50001
#define INF 1251000000

int v[Dim];

int main()
{
	int i,sol,min,K,N,x,L,R,pos;

	freopen("secv2.in","r",stdin);

	scanf("%d%d",&N,&K);
	v[0]=0;
	for(i=1;i<=N;i++)
	{
		scanf("%d",&x);
		v[i]=v[i-1]+x;
	}

	sol=v[K];
	L=1;
	R=K;
	min=INF;
	pos=0;

	for(i=K+1;i<=N;i++)
	{
		if(min>v[i-K])
		{
			min=v[i-K];
			pos=i-K+1;
		}
		if(v[i]-min>sol)
		{
			sol=v[i]-min;
			L=pos;
			R=i;
		}
	}

	freopen("secv2.out","w",stdout);

	printf("%d %d %d\n",L,R,sol);

	return 0;
}