Pagini recente » Cod sursa (job #348697) | Cod sursa (job #1793406) | Cod sursa (job #1680777) | Cod sursa (job #2144923) | Cod sursa (job #2913240)
#include <iostream>
#include <fstream>
#include <queue>
using namespace std;
ifstream fin ("zombie.in");
ofstream fout ("zombie.out");
int D,N,K,i,ztmp,chakra;
queue<int> q;
int main()
{
fin>>D>>N>>K;
if (K>=D)
fout<<N;
else{
fin>>ztmp;
q.push(ztmp);
for (i=1;i<N;i++){
fin>>ztmp;
if (ztmp-q.front()>=D){
if (q.size()>K){
chakra+=K;
while(!q.empty())
q.pop();
}
else{
while(!q.empty() && ztmp-q.front()>=D){
chakra++;
q.pop();
}
}
}
q.push(ztmp);
//cout<<chakra<<' ';
}
if (q.size()<K)
chakra+=q.size();
else chakra+=K;
fout<<chakra;
}
return 0;
}