Cod sursa(job #635682)

Utilizator ELHoriaHoria Cretescu ELHoria Data 19 noiembrie 2011 14:08:02
Problema Zombie Scor 100
Compilator cpp Status done
Runda .com 2011 Marime 0.41 kb
#include <fstream>
#include <queue>

using namespace std;

ifstream fin("zombie.in");
ofstream fout("zombie.out");

int  N , K , D , c[1000001] , T;

int main()
{
	queue<int> Q;
	fin>>D>>N>>K;
	for(int i=1;i<=N;++i)
	{
		fin>>T;
		while(!Q.empty() && T-Q.front()>=D) Q.pop(); 
		Q.push(T);
		c[i] = c[i-1] + 1;
		if(Q.size()) c[i] = min(c[i],c[i-Q.size()] + K);
	}
	fout<<c[N]<<'\n';
	return 0;
}