H. Черви и ослы

Codeforces
IDCF10085H
Time2000ms
Memory256MB
Difficulty
English · Original
Formal · Original
На прямой стоят n червей: i-ый червь находится в точке с координатой xi, причём никакие два червя не находятся в одной точке. Маленький мальчик очень любит уничтожать червей. Для этого он использует оружие массового поражения «бетонный осёл». Каждое его применение создает копию бетонного осла шириной d, которая падает на прямую и уничтожает все живое на отрезке длины d. При этом края бетонного осла всегда будут находиться в точках с целыми координатами. Таким образом, каждая копия бетонного осла может уничтожить всех червей, которые расположены на некотором отрезке прямой [x, x + d]. Помогите маленькому мальчику определить, за какое наименьшее число применений бетонного осла он сможет уничтожить всех червей. В первой строке записаны два целых числа n и d (1 ≤ n ≤ 105, 1 ≤ d ≤ 109) — количество червей, находящихся на прямой, и ширина бетонного осла. Во второй строке записано n целых чисел x1, x2, ..., xn ( - 109 ≤ xi ≤ 109) — координаты точек на прямой, в которых расположены черви. Все координаты xi различны и упорядочены по возрастанию. Выведите единственное целое число — минимальное количество применений бетонного осла, необходимое для уничтожения всех червей. ## Входные Данные В первой строке записаны два целых числа n и d (1 ≤ n ≤ 105, 1 ≤ d ≤ 109) — количество червей, находящихся на прямой, и ширина бетонного осла.Во второй строке записано n целых чисел x1, x2, ..., xn ( - 109 ≤ xi ≤ 109) — координаты точек на прямой, в которых расположены черви. Все координаты xi различны и упорядочены по возрастанию. ## Выходные Данные Выведите единственное целое число — минимальное количество применений бетонного осла, необходимое для уничтожения всех червей. ## Примеры Входные данные7 21 3 4 6 10 11 12Выходные данные3Входные данные7 21 3 4 8 10 11 12Выходные данные4 [samples]
**Definitions** Let $ n, d \in \mathbb{Z}^+ $ with $ 1 \leq n \leq 10^5 $, $ 1 \leq d \leq 10^9 $. Let $ X = (x_1, x_2, \dots, x_n) $ be a strictly increasing sequence of distinct integers, where $ x_i \in [-10^9, 10^9] $, representing the positions of the worms. **Constraints** - $ x_1 < x_2 < \dots < x_n $ - Each application of the "concrete donkey" covers a closed interval $[x, x + d]$ for some integer $ x $. **Objective** Find the minimum number of intervals of length $ d $ with integer left endpoints required to cover all points in $ X $.
API Response (JSON)
{
  "problem": {
    "name": "H. Черви и ослы",
    "description": {
      "content": "На прямой стоят n червей: i-ый червь находится в точке с координатой xi, причём никакие два червя не находятся в одной точке. Маленький мальчик очень любит уничтожать червей. Для этого он использует ",
      "description_type": "Markdown"
    },
    "platform": "Codeforces",
    "limit": {
      "time_limit": 2000,
      "memory_limit": 262144
    },
    "difficulty": "None",
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "CF10085H"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "На прямой стоят n червей: i-ый червь находится в точке с координатой xi, причём никакие два червя не находятся в одной точке.\n\nМаленький мальчик очень любит уничтожать червей. Для этого он использует ...",
      "is_translate": false,
      "language": "English"
    },
    {
      "statement_type": "Markdown",
      "content": "**Definitions**  \nLet $ n, d \\in \\mathbb{Z}^+ $ with $ 1 \\leq n \\leq 10^5 $, $ 1 \\leq d \\leq 10^9 $.  \nLet $ X = (x_1, x_2, \\dots, x_n) $ be a strictly increasing sequence of distinct integers, where ...",
      "is_translate": false,
      "language": "Formal"
    }
  ]
}
Full JSON Raw Segments