Cod sursa(job #446794)

Utilizator PavelPavel Ana-Oriana Pavel Data 26 aprilie 2010 18:31:35
Problema Secventa 2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include<fstream>
using namespace std;
ifstream in("secv2.in");
ofstream out("secv2.out");
int sum[1<<16],v[1<<16];
int main()
{
	int sc,n,smax=0,i,a,b,k,amax,bmax;
	in>>n>>k;
	for(i=1;i<=n;i++)
	{
		in>>v[i];
		sum[i]=sum[i-1]+v[i];
	}
	smax=sum[k];
	sc=sum[k];
	amax=a=1;
	bmax=b=k;
	for(i=1;i<=n;i++)
	{
		if(sc+v[i]>sum[i]-sum[i-k])
		{	
			sc=sc+v[i];
			b=i;
		}
		else
		{	
			sc=sum[i]-sum[i-k];
			a=i-k+1;
			b=i;
		}
		if(sc>smax)
		{
			smax=sc;
			amax=a;
			bmax=b;
		}
	}
	out<<amax<<' '<<bmax<<' '<<smax<<'\n';
	return 0;
}