Pagini recente » Cod sursa (job #230344) | Cod sursa (job #2773681) | Cod sursa (job #680120) | Cod sursa (job #2583904) | Cod sursa (job #2453426)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("zombie.in");
ofstream out("zombie.out");
const int dim = 1000005;
int n,d,k,timp[dim];
int q[dim],st,dr,consum[dim],cons;
int main()
{
in >> d >> n >> k;
for (int i=1; i<=n; i++)
{
in >> timp[i];
}
int cate;
st = 0;
dr = -1;
for (int i=1; i<=n; i++)
{
if (timp[i] - q[st] + 1 >= d)
{
cate = 0;
while (st <= dr && timp[i] - q[st] + 1 >= d)
{
st++;
cate++;
}
}
q[++dr] = timp[i];
consum[i] = min(consum[i-1] + 1 , consum[st] + k);
}
out << consum[n];
return 0;
}