Cod sursa(job #964002)

Utilizator paulhelmerPaul Helmer paulhelmer Data 19 iunie 2013 21:08:15
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.37 kb
#include<fstream>
using namespace std;

int v[5000001],d[5000001],i,n,k,p,u;
long long s;

int main()
{
	ifstream f("deque.in");
	ofstream g("deque.out");
	f >> n >> k;
	for (i=1;i<=n;i++)
		f >> v[i];
	p=1;u=0;s=0;
	for (i=1;i<=n;i++)
	{
		while ((p<=u) && (v[i]<=v[d[u]])) u--;
		u++; d[u]=i;
		if (i-d[p]==k) p++;
		if (i>=k) s+=v[d[p]];
	}
	g << s;
}