Cod sursa(job #821600)

Utilizator NicuCJNicu B. NicuCJ Data 22 noiembrie 2012 15:39:42
Problema Deque Scor 25
Compilator cpp Status done
Runda Arhiva educationala Marime 0.45 kb
#include <fstream>
using namespace std;
int n, k, dq[5000001], poz[5000001];
int inceput, final, suma=0;
int main()
{
	int i, x;
	ifstream f("deque.in");
	ofstream g("deque.out");
	f>>n>>k;
	inceput=1;
	for(i=1; i<=n; i++)
	{
		f>>x;
		while(x<=dq[final] && final>=inceput)
			final--;
		final++;
		dq[final]=x;
		poz[final]=i;
		if(poz[inceput]==i-k)
		{
			inceput++;
		}
		if(i>=k)
		{
			suma+=dq[inceput];
		}
	}
	g<<suma;
}