Cod sursa(job #636587)

Utilizator cosmin79Carabet Cosmin Andrei cosmin79 Data 19 noiembrie 2011 21:32:18
Problema Zombie Scor 100
Compilator cpp Status done
Runda .com 2011 Marime 0.44 kb
#include <stdio.h>
#define NMAX 1000005
int d,n,k,A[NMAX],D[NMAX];
inline int min(int x,int y)
{
	return x<y ? x : y;
}
int main()
{
	freopen("zombie.in","r",stdin);
	freopen("zombie.out","w",stdout);
	scanf("%d%d%d\n",&d,&n,&k);
	int i,poz;
	for (i=1; i<=n; i++)
		scanf("%d",&A[i]);
	poz=1;
	for (i=1; i<=n; i++)
	{
		while (A[i]-(d-1)>A[poz])
			poz++;
		D[i]=min(D[i-1]+1,D[poz-1]+k);
	}
	printf("%d\n",D[n]);
	return 0;
}