Cod sursa(job #363761)

Utilizator taseTanase Alexandru tase Data 14 noiembrie 2009 17:30:18
Problema Secventa 2 Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.51 kb
#include<cstdio>
int n,i,k,v[50004],p,u,smax=-30000,sum[50004],sc,pp;
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",&v[i]);
		sum[i]=sum[i-1]+v[i];
	}
	p=1;
	u=k;
	sc=smax=sum[k];
	for(i=k+1;i<=n;++i)
	{
		if(sc+v[i]>sum[i]-sum[i-k])
			sc+=v[i];
		else 
		{
			sc=sum[i]-sum[i-k];
			pp=i-k+1;
		}
		if(sc>smax)
		{
			smax=sc;
			p=pp;
			u=i;
		}
	}
	printf("%d %d %d",p,u,smax);
	return 0;
}