Cod sursa(job #412302)

Utilizator GotenAmza Catalin Goten Data 5 martie 2010 14:38:21
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include<fstream.h>
#include<iostream.h>
int c[5000000],a[5000000];
int main()
{
	long long s=0;
	int n,k,i,x,p,u;
	ifstream f("deque.in");
	ofstream g("deque.out");
	f>>n>>k;
	p=1;
	u=0;
	a[0]=-(1<<30);
	for(i=1;i<k;i++)
	{

		f>>a[i];
		while(a[i]<=a[c[u]]&&u>=p)
			u--;
		c[++u]=i;
	}
	for(i=k;i<=n;i++)
	{
		f>>a[i];
		while(c[p]+k<i+1&&p<=u)
			p++;
		while(a[i]<=a[c[u]]&&u>=p)
			u--;
		c[++u]=i;
		s+=a[c[p]];
	}
	g<<s;
	return 0;
}