Cod sursa(job #638273)

Utilizator alexdmotocMotoc Alexandru alexdmotoc Data 20 noiembrie 2011 19:58:12
Problema Zombie Scor 0
Compilator cpp Status done
Runda .com 2011 Marime 0.75 kb
#include <iostream>
#include <cstdio>
#include <algorithm>

using namespace std;

#define maxN 1000005

long long chak = 0 , D , x[maxN] , sum = 0;
int N , K;

int main ()
{
	freopen ("zombie.in" , "r" , stdin);
	freopen ("zombie.out" , "w" , stdout);
	
	scanf ("%lld %d %d" , &D , &N , &K);
	
	for (int i = 1 ; i <= N ; ++i)
		scanf ("%lld" , &x[i]);
	
	int cont = 0;
	
	for (int i = 1 ; i <= N ; ++i)
	{
		sum += abs (x[i] - x[i - 1]);
		
		if (sum < D)
			++cont;
		
		else
		{
			sum = 0;
			
			if (cont > K)
				chak += K;
			
			else chak += cont;
			
			cont = 1;
		}	
		
	}
	
	
	if (cont > chak)
		chak = cont - chak;
	
	else if (chak > cont)
		chak += chak - cont;
	
	printf ("%lld" , chak);
	
	return 0;
}