Cod sursa(job #616216)

Utilizator alexdmotocMotoc Alexandru alexdmotoc Data 11 octombrie 2011 22:43:35
Problema Deque Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
#include <iostream>
#include <cstdio>
#include <deque>

using namespace std;

#define maxN 5000005
#define INF 0x3f3f3f3f

long long N , K , suma = 0 , mini = INF , nr;

deque <long long> coada;

int main ()
{
	freopen ("deque.in" , "r" , stdin);
	freopen ("deque.out" , "w" , stdout);
	
	scanf ("%lld %lld" , &N , &K);
	
	for (int i = 1 ; i <= N ; ++i)
	{
		scanf ("%lld" , &nr);
		
		coada.push_back (nr);
		
		if (coada.size () % K == 0)
		{
			mini = INF;
			for (unsigned t = 0 ; t < coada.size () ; ++t)
			{
				if (coada[t] < mini)
					mini = coada[t];
			//printf ("%lld " , coada[t]);
			}
			suma += mini;
			
			coada.pop_front ();
		}
		
		
		
	}
	
	printf ("%lld" , suma);
	
	return 0;
}