РУҚА
27

Освобождение ячеек камеры хранения

ЕГЭ · Информатика · Задание 27 · Алгоритмы и исполнители
ВысокаяФИПИE9F6D6Развёрнутое решение≈ 15 минут

На вход программе подаются сведения о пассажирах, сдавших свой багаж в камеру хранения. В первой строке задано текущее время: через двоеточие два целых числа, соответствующие часам (от 00 до 23 — ровно 2 символа) и минутам (от 00 до 59 — ровно 2 символа). Во второй строке сообщается количество пассажиров N, которое не меньше 10, но не превосходит 1000. Каждая из следующих N строк имеет формат: <Фамилия> <время освобождения ячейки>, где <Фамилия> — строка, состоящая не более чем из 20 символов, а <время освобождения ячейки> задано через двоеточие двумя целыми числами, соответствующими часам и минутам. Фамилия и время освобождения ячейки разделены одним пробелом. Сведения отсортированы в порядке времени сдачи багажа. Требуется написать программу, выводящую фамилии пассажиров, которые в ближайшие 2 часа должны освободить ячейки, в хронологическом порядке освобождения ячеек.

Пример входных данных: 10:00; 3; Иванов 12:00; Петров 10:00; Сидоров 12:12. Результат: Петров, Иванов.

Условие как в банке ФИПИ — открыть и сверить
Дайте развернутый ответ.

На вход программе подаются сведения о пассажирах, сдавших свой багаж в камеру хранения. В первой строке задано текущее время: через двоеточие два целых числа, соответствующие часам (от 00 до 23 – ровно 2 символа) и минутам (от 00 до 59 – ровно 2 символа). Во второй строке сообщается количество пассажиров N, которое не меньше 10, но не превосходит 1000. Каждая из следующих N строк имеет следующий формат:

<Фамилия> <время освобождения ячейки>,

где <Фамилия> – строка, состоящая не более, чем из 20 символов, <время освобождения ячейки> – через двоеточие два целых числа, соответствующие часам (от 00 до 23 – ровно 2 символа) и минутам (от 00 до 59 – ровно 2 символа). <Фамилия> и <время освобождения ячейки> разделены одним пробелом. Сведения отсортированы в порядке времени сдачи багажа.

Требуется написать программу, выводящую фамилии пассажиров, которые в ближайшие 2 часа должны освободить ячейки, в хронологическом порядке освобождения ячеек.

Пример входных данных:

10:00

3

Иванов 12:00

Петров 10:00

Сидоров 12:12

Результат работы программы для этого примера:

Петров

Иванов



Ответ

Это задание с развёрнутым решением: ответом считается запись хода решения, а не строка. Напишите решение на бумаге и сравните с разбором — там каждый шаг с обоснованием.

Открыть разбор
!
3 уровня: от лёгкого толчка до почти готового решения. Следующий открывается, когда прочитан предыдущий, — чтобы не перепрыгнуть сразу к ответу.
1Мягкая — с чего смотретьуровень 1 из 3

Как представить время в минутах, чтобы сравнивать его арифметически и сортировать?

2Наводящая — какие числа считатьуровень 2 из 3

Переведите время в минуты от начала суток. Для каждого пассажира проверьте условие $t_{\text{тек}} \leq t \leq t_{\text{тек}} + 120$, затем отсортируйте подходящие записи по времени освобождения.

3Прямая — фактически решениеуровень 3 из 3

Разберите строку методом split(), сохраните фамилию и время. После фильтрации используйте сортировку по числовому времени и выведите фамилии.

Всё равно не складывается?Полное решение с обоснованием каждого шага — на отдельной странице.
Открыть решение

Задание 27 ЕГЭ, информатика

Задача из темы «Алгоритмы и исполнители»: в ней 432 задачи с ответом и разбором по шагам. В 27-м номере бланка — 49 задач.

Ответ можно проверить здесь же, а если не выходит — открыть подсказку или разбор. Регистрация не нужна.