Cod sursa(job #226866)

Utilizator c_e_manuEmanuel Cinca c_e_manu Data 2 decembrie 2008 22:31:51
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include<stdio.h>
#define N 50001
#define INF 2000000000

long i,j,st,dr,poz[N],v[N],sum1[N],sum2[N],max,n,k;

int main()
{	freopen("secv2.in","r",stdin);
	freopen("secv2.out","w",stdout);
	scanf("%ld%ld",&n,&k);st=1;dr=n;
	for(i=1;i<=n;i++)
		scanf("%ld",&v[i]);
	max=-INF;
	for(i=1;i<=k;i++)sum1[i]=sum1[i-1]+v[i];
	for(i=k;i<=n;i++)
	{	sum1[i]=sum1[i-1]+v[i];
		if(sum1[i]>max)
			max=sum1[i],dr=i;
	}
	for(i=dr;i>=dr-k;i--)sum2[i]=sum2[i+1]+v[i];
	for(i=dr-k-1;i>=1;i--)
	{	sum2[i]=sum2[i+1]+v[i];
		if(sum2[i]>max)
			max=sum2[i],st=i;
	}
	printf("%ld %ld %ld",st,dr,max);
	return 0;
}