E. Переподготовка

Codeforces
IDCF10126E
Time2000ms
Memory256MB
Difficulty
English · Original
Formal · Original
Стив пытался найти логику в действиях менеджеров Quantum Artificial Intelligence. Впрочем, тайное уже становилось явным. Компания Quantum Artificial Intelligence хотела стать единственным партнёром Smart Industrial Robots. Однако Smart Industrial Robots настаивала на том, что в компании-партнёре должно работать достаточное количество квалифицированных сотрудников. Если считать и сотрудников Quantum Artificial Intelligence, и сотрудников Gadget Operating System, необходимая численность набирается. А вот квалификацию требуется подтверждать экзаменом. Для каждого сотрудника известно количество дней di, в течение которых он может подготовиться к экзамену, чтобы сдать его блестяще на следующий день после завершения подготовки. Но если знания не применяются на практике, они постепенно утрачиваются. Если сотрудник будет сдавать экзамен не на следующий день, а через день по завершении подготовки, то сдаст его на балл ниже; через два дня — на два балла ниже и т.д. Квалификация считается подтверждённой, если сотрудник сдал экзамен не хуже, чем на m баллов ниже идеальной оценки. Менеджеры Quantum Artificial Intelligence хотят, чтобы все сотрудники немедленно приступили к подготовке к экзамену. По техническим причинам одновременно сдавать экзамен могут не более k человек. Организация экзамена — достаточно хлопотное дело, и менеджеры хотели бы обойтись как можно меньшим количеством экзаменов. Ваша задача — определить, какое минимальное количество экзаменов потребуется назначить, чтобы все сотрудники подтвердили свою квалификацию. В первой строке содержатся целые числа n, m, k (1 ≤ n,  k ≤ 105, 0 ≤ m ≤ 109) — количество сотрудников, допустимое отклонение от полного балла, максимально возможное количество одновременно экзаменующихся соответственно. Во второй строке содержится n целых чисел d1, d2, ..., dn, где di (1 ≤ di ≤ 109) — количество дней, которое требуется сотруднику #i, чтобы подготовиться к экзамену. В первой строке выведите минимально возможное количество экзаменов, которое придётся назначить, чтобы все сотрудники подтвердили свою квалификацию. ## Входные Данные В первой строке содержатся целые числа n, m, k (1 ≤ n,  k ≤ 105, 0 ≤ m ≤ 109) — количество сотрудников, допустимое отклонение от полного балла, максимально возможное количество одновременно экзаменующихся соответственно.Во второй строке содержится n целых чисел d1, d2, ..., dn, где di (1 ≤ di ≤ 109) — количество дней, которое требуется сотруднику #i, чтобы подготовиться к экзамену. ## Выходные Данные В первой строке выведите минимально возможное количество экзаменов, которое придётся назначить, чтобы все сотрудники подтвердили свою квалификацию. ## Примеры Входные данные4 3 35 8 13 21Выходные данные3Входные данные10 5 31 6 4 15 4 10 8 2 12 5Выходные данные4 [samples]
**Definitions** Let $ n, m, k \in \mathbb{Z} $ be given, where: - $ n $: number of employees, - $ m $: maximum allowable score reduction from perfect score, - $ k $: maximum number of employees allowed to take the exam simultaneously. Let $ D = (d_1, d_2, \dots, d_n) $ be a sequence of integers, where $ d_i $ is the number of days employee $ i $ needs to prepare. **Constraints** 1. $ 1 \leq n, k \leq 10^5 $ 2. $ 0 \leq m \leq 10^9 $ 3. $ 1 \leq d_i \leq 10^9 $ for all $ i \in \{1, \dots, n\} $ **Objective** An employee $ i $ can take the exam on day $ d_i + t $ (for $ t \geq 0 $), achieving a score reduction of $ t $ (i.e., $ m - t \geq 0 $ must hold for qualification). Thus, employee $ i $ must take the exam on or before day $ d_i + m $. Each exam day can accommodate at most $ k $ employees. Minimize the number of distinct exam days required so that every employee $ i $ takes the exam on some day $ x_i \in [d_i, d_i + m] $.
API Response (JSON)
{
  "problem": {
    "name": "E. Переподготовка",
    "description": {
      "content": "Стив пытался найти логику в действиях менеджеров Quantum Artificial Intelligence. Впрочем, тайное уже становилось явным. Компания Quantum Artificial Intelligence хотела стать единственным партнёром Sm",
      "description_type": "Markdown"
    },
    "platform": "Codeforces",
    "limit": {
      "time_limit": 2000,
      "memory_limit": 262144
    },
    "difficulty": "None",
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "CF10126E"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "Стив пытался найти логику в действиях менеджеров Quantum Artificial Intelligence. Впрочем, тайное уже становилось явным. Компания Quantum Artificial Intelligence хотела стать единственным партнёром Sm...",
      "is_translate": false,
      "language": "English"
    },
    {
      "statement_type": "Markdown",
      "content": "**Definitions**  \nLet $ n, m, k \\in \\mathbb{Z} $ be given, where:  \n- $ n $: number of employees,  \n- $ m $: maximum allowable score reduction from perfect score,  \n- $ k $: maximum number of employee...",
      "is_translate": false,
      "language": "Formal"
    }
  ]
}
Full JSON Raw Segments