Cod sursa(job #611820)

Utilizator CBogdanCiobanu Bogdan CBogdan Data 3 septembrie 2011 16:45:31
Problema Secventa 2 Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include<cstdio>
using namespace std;

int  i,n,k,sum,SOL,end,beg,idx,V[10010];

void read(),solve();

int main()
{
	read();
	solve();
	
	return 0;
}

void read()
{
	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]);V[i]+=V[i-1];}
}

void solve()
{
	SOL=V[k];
	sum=SOL;
	idx=1;beg=1;end=k;
	for(i=k+1;i<=n;i++)
	{
		sum=V[i]-V[idx-1];
		if(sum-(V[i-k]-V[idx-1])>sum )
		{
			sum-=(V[i-k]-V[idx-1]);
			idx=i-k;
		}
		if(sum>SOL)
		{
			SOL=sum;
			beg=idx+1;
			end=i;
		}
	}
	printf("%d %d %d\n",beg,end,SOL);
}