Расписание поездов

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

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

Между станциями A и B ходят поезда. Расписание задано двумя списками рейсов: из A в B и из B в A. Рейс — пара строк ["ЧЧ:ММ", "ЧЧ:ММ"]: время отправления и время прибытия в пределах одних суток (24-часовой формат, отправление раньше прибытия, рейсы идут в произвольном порядке).

Прибывшему поезду нужно turnaround минут, прежде чем он снова сможет отправиться с этой станции (при turnaround = 0 он уезжает в ту же минуту, когда приехал). Поезд ездит только по рейсам из расписания, за день может проехать несколько рейсов подряд, а в момент каждого отправления на станции должен уже стоять готовый поезд.

Верните список [x, y]: минимальное число поездов, которые должны начать день на станции A (x) и на станции B (y), чтобы выполнить всё расписание. Для пустых списков рейсов ответ [0, 0]. В каждом списке не больше 100 рейсов.

Пример: 5, [["09:00", "12:00"], ["10:00", "13:00"], ["11:00", "12:30"]], [["12:02", "15:00"], ["09:00", "10:30"]] → [2, 2].


Источник: Coding Competitions Archive, codejam/2008/qualification_round/train_timetable · © Google LLC · Apache-2.0 · условие переведено и дополнено

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

Ещё задачи

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