Cod sursa(job #372394)

Utilizator GotenAmza Catalin Goten Data 9 decembrie 2009 21:02:03
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include<fstream>
#include<iostream>

using namespace std;

long i,n,a[5000002],s,d,k,c[5000002];
long long constantafolositapentrusuma;

int main()
{
	ifstream f("deque.in");
	ofstream g("deque.out");
	f>>n>>k;
	for(i=1;i<=n;i++)
		f>>a[i];
	s=1;d=1;
	c[d]=1;
	for(i=2;i<k;i++)
	{
		while(a[i]<=a[c[d]]&&d>=s)d--;
		c[++d]=i;
	}
	for(i=k;i<=n;i++)
	{
		while(c[s]+k<=i)s++;
		while(a[i]<=a[c[d]]&&d>=s)d--;
		c[++d]=i;
		constantafolositapentrusuma+=a[c[s]];
	}
	g<<constantafolositapentrusuma;
	return 0;
}