Cod sursa(job #640637)

Utilizator alex_mircescuAlex Mircescu alex_mircescu Data 26 noiembrie 2011 11:03:07
Problema Zombie Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include <stdio.h>
#include <math.h>

long d, n, k, h, i, zt, v[1000010], o, cost;

int main() {
	freopen("zombie.in", "r", stdin);
	freopen("zombie.out", "w", stdout);
	
	scanf("%ld %ld %ld", &d, &n, &k);
	long h = 1;
	for (i = 1; i <= n; ++i) {
		scanf("%ld", &zt);
		v[++o] = zt;
		long zo = 0;
		while (v[h] <= v[o] - d) {
			++zo;
			++h;
		}
		if (zo != 0) {
			if (zo >= k) cost += k;
			else cost += zo;
		}
	}
	if (o - h + 1 >= k) cost += k;
	else cost += o - h + 1;
	printf("%ld\n", cost);
	return 0;
}