Pagini recente » Cod sursa (job #2191291) | Cod sursa (job #1715162) | Cod sursa (job #516401) | Cod sursa (job #955667) | Cod sursa (job #638688)
Cod sursa(job #638688)
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
ifstream cin("zombie.in");
ofstream cout("zombie.out");
int D, N, K;
cin >> D >> N >> K;
vector<int> v(N);
for (int i = 0; i < N; ++i)
cin >> v[i];
sort(v.begin(), v.end());
int first_zombie = 0;
int answer = 0;
for (int i = 0; i < N; ++i)
while (first_zombie < N && v[first_zombie] + D <= v[i])
if (i - first_zombie >= K) {
first_zombie = i;
answer += K;
}
else {
++first_zombie;
answer += 1;
}
if (N - first_zombie >= K)
answer += K;
else
answer += N - first_zombie;
cout << answer << "\n";
}