Cod sursa(job #722490)

Utilizator hrazvanHarsan Razvan hrazvan Data 24 martie 2012 17:09:42
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include<fstream>
using namespace std;

int v[50000],sum[100000];

int main()
{
	long n,k,i,sc=0,p,stmax,drmax,smax;
	ifstream f("secv2.in");
	ofstream o("secv2.out");
	f>>n>>k;
	for(i=1;i<=n;i++)
	{
		f>>v[i];
	}
	sum[1]=v[1];
	for(i=2;i<=2*n;i++)
	{
		sum[i]=sum[i-1]+v[i];
	}
	sc = sum[k];
	p = 1;
	stmax = 1;
	drmax = k;
	smax = sum[k];
	for(i=k+1;i<=n;i++)
	{
		if(sum[i]-sum[i-k]>sc+v[i])
		{
			sc=sum[i]-sum[i-k];
			p=i-k+1;
		}
		else
			sc+=v[i];
		if(sc > smax)
		{
			smax=sc;
			stmax=p;
			drmax=i;
		}
	}
	o<<stmax<<' '<<drmax<<' '<<smax<<'\n';
}