Pagini recente » Cod sursa (job #1875506) | Cod sursa (job #214778) | Cod sursa (job #2827282) | Cod sursa (job #54802) | Cod sursa (job #635328)
Cod sursa(job #635328)
#include <fstream>
#define NMax 1000010
using namespace std;
const char IN[]="zombie.in",OUT[]="zombie.out";
int D,N,K;
int a[NMax];
int T[NMax];
ifstream fin(IN); ofstream fout(OUT);
inline int min(int x,int y){
return x<y ? x : y;
}
int main()
{
int i,j;
fin>>D>>N>>K;
for (i=0;i<N;++i) fin>>a[i];
for (i=j=N-1;i>=0;--i)
{
while (j>i && a[i]+D-1<a[j]) --j;
T[i]= min( T[i+1] + 1 , K + T[j+1]);
}
//for (i=0;i<N;++i) printf("%d ",T[i]);printf("\n");
fout<<T[0];
fout.close();
return 0;
}