Pagini recente » Cod sursa (job #3235777) | Cod sursa (job #535597) | Cod sursa (job #3038505) | Cod sursa (job #260292) | Cod sursa (job #640642)
Cod sursa(job #640642)
#include <stdio.h>
long d, n, k, h = 1, i, D[1000010], zt[1000010];
inline long min(long a, long b) {if (a > b) return b; return a;}
int main() {
freopen("zombie.in", "r", stdin);
freopen("zombie.out", "w", stdout);
scanf("%ld %ld %ld", &d, &n, &k);
for (i = 1; i <= n; ++i) scanf("%ld", &zt[i]);
for (i = 1; i <= n; ++i) {
while (zt[i] - d + 1 > zt[h]) ++h;
D[i] = min(D[h - 1] + k, D[i - 1] + 1);
}
printf("%ld\n", D[n]);
return 0;
}