Самое раннее прибытие по ежедневным рейсам

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

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

Аэропорты airports заданы строками "КОД ±HH:MM": трёхбуквенный код и смещение местного времени от UTC (без летнего времени). Рейсы flights — строки "ОТКУДА КУДА HH:MM D": рейс вылетает каждый день в HH:MM по местному времени аэропорта вылета и летит D минут (от 1 до 2000). Путешественник готов вылететь из origin в момент ready — местное время origin вида "YYYY-MM-DD HH:MM" — и может сесть на любой рейс из origin, вылетающий не раньше ready. В пересадочном аэропорту следующий рейс должен вылетать не раньше чем через min_connection минут после прилёта.

Верните самое раннее возможное время прибытия в destination по местному времени destination в формате "YYYY-MM-DD HH:MM", или "", если туда не добраться. Если origin и destination совпадают, ответ — ready. Календарь григорианский, все данные корректны, аэропортов до 50, рейсов до 500.

Пример: аэропорты ["SVO +03:00", "IST +03:00", "LHR +00:00"], рейсы ["SVO IST 09:30 240", "IST LHR 15:00 240", "SVO LHR 12:00 270"], "SVO", "LHR", "2024-03-04 08:00", 60 → "2024-03-04 13:30".


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

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

Ещё задачи

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