Меньше всего заправок до цели

Задача по программированию с проверкой онлайн

Сложность
Средняя
Языки
Python
JavaScript
TypeScript
Java
Go
Темы
Поиск и сортировка
Динамическое программирование

Машина едет по прямой от точки 0 к точке target и тратит одну единицу топлива на единицу пути. Бак не ограничен, в начале в нём start_fuel единиц. В списке stations даны заправки [позиция, топливо]; позиции строго возрастают и лежат строго между 0 и target. Остановившись на заправке, машина забирает всё её топливо; проехать мимо тоже можно. Добраться до заправки или до цели с пустым баком разрешено.

Верните наименьшее число остановок на заправках, при котором машина доедет до target, или -1, если доехать нельзя. Если хватает стартового топлива, ответ 0. Ограничения: 1 ≤ target, start_fuel ≤ 10^9, до 500 заправок, топливо каждой от 1 до 10^9; сумма топлива может не поместиться в 32 бита.

Пример: 100, 10, [[10, 60], [20, 30], [30, 30], [60, 40]] → 2.


Источник: задача CodeShare

Решить онлайнБесплатно и без регистрации: пишете код в браузере и проверяете его тестами (без аккаунта — несколько задач в день).

Ещё задачи

Все задачи для тренировки