Cod sursa(job #279806)

Utilizator allynaAlina S allyna Data 12 martie 2009 23:34:09
Problema Deque Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.45 kb
#include <iostream.h>
#include<fstream.h>
#define max 5000010
int N, K;
int a[max], coada[max];
int st,dr;
long long s;

int main()
{
	int i;
	ifstream in("deque.in");
	ofstream out("deque.out");
	in>>n>>k
	for (i=1;i<=n;i++) 
		in>>a[i];
	st=1;
	dr=0; 
	for (i=1;i<=n;i++)
	{
		while (st<=dr && a[i] <= a[coada[st]) dr--;		
		coada[++dr] = i;
		if (coada[dr]==i-k) st++;
		if (i>=k) s+=a[coada[st]]; 	
	}
	out<<s;
	return 0;
}