Cod sursa(job #325335)

Utilizator Bogdan_tmmTirca Bogdan Bogdan_tmm Data 20 iunie 2009 02:05:36
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include<stdio.h>
#include<vector>
#include<algorithm>
using namespace std;
vector <long long> a(1),b(1);
long long n,k,in,sf,s,sm,x,i;
int main()
{
	freopen("secv2.in","r",stdin);
	freopen("secv2.out","w",stdout);
	scanf("%lld%lld",&n,&k);
	s=sm=-2000000015;
	for(i=1;i<=n;i++)
	{
		scanf("%lld",&x);
		b.push_back(b.back()+x);
		if(b.back()<b[a.back()])
			a.push_back(i);
		else
			a.push_back(a.back());
	}
	for(i=k;i<=n;i++)
	{
		s=b[i]-b[a[i-k]];
		if(s>sm)
		{
			sm=s;
			in=a[i-k]+1;
			sf=i;
		}
	}
	printf("%lld %lld %lld\n",in,sf,sm);
	return 0;
}