Cod sursa(job #570094)

Utilizator tinkyAndrei Ilisei tinky Data 2 aprilie 2011 16:06:50
Problema Deque Scor 25
Compilator cpp Status done
Runda Arhiva educationala Marime 0.42 kb
#include<fstream>
#define maxn 5000010
using namespace std;
long long v[maxn],q[maxn],n,k;
void citire()
{
	int i;
	ifstream in("deque.in");
	in>>n>>k;
	for (i=1;i<=n;i++)
		in>>v[i];
}
int main()
{
	int i,b=0,f=1,s=0;
	citire();
	for (i=1;i<=n;i++)
	{
		while (f<=b&&v[i]<v[q[b]])
			b--;
		q[++b]=i;
		if (q[f]==i-k)
			f++;
		if (i>=k)
			s+=v[q[f]];
	}
	ofstream out("deque.out");
	out<<s<<'\n';
}