Cod sursa(job #2796840)

Utilizator Luca_Miscocilucainfoarena Luca_Miscoci Data 8 noiembrie 2021 21:11:25
Problema Zombie Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.53 kb
#include <fstream>
#define NMAX 1000000

using namespace std;

int v[NMAX + 1], dp[NMAX + 1], poz[NMAX + 1];

int main(){

  ifstream fin ("zombie.in");
  ofstream fout ("zombie.out");

  int d, n, k, p;
  fin >> d >> n >> k;

  for (int i = 0; i < n; i++)
    fin >> v[i];
  p = 1;
  for (int i = 0; i < n; i++){
    while (v[p] < v[i] - d){
      p ++;
    }
    poz[i] = p;
  }

  dp[0] = 1;
  for (int i = 1; i < n; i++)
    dp[i] = min (dp[i - 1] + 1, dp[poz[i] - 1] + k);

  fout << dp[n - 1];
  return 0;
}