Cod sursa(job #438191)

Utilizator crisvirusDutescu Cristian crisvirus Data 10 aprilie 2010 15:52:10
Problema Secventa 2 Scor 100
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 main()
{
	int n,sc=0,smax=-(1<<30),i,x,pi,pimax,pfmax,l,k,sum[1<<16];
	pi=1;
	l=1;
	in>>n;
	in>>k;
	sum[0]==0;
	for (i=1;i<=n;++i)
	{
		in>>x;
		sum[i]=sum[i-1]+x;
	}
	sc=sum[k-1];
	for(i=k;i<=n;++i)
	{
		x=sum[i]-sum[i-1];
		if (sc+x>sum[i]-sum[i-k]) 
		{
			sc=sc+x;
		}
		else
		{
			sc=sum[i]-sum[i-k];
			pi=i-k+1;
		}
		if (sc>smax)
		{
			smax=sc;
			pimax=pi;
			pfmax=i;
		}
	}
	out<<pimax<<" "<<pfmax<<" "<<smax<<"\n";

	return 0;
}