На вход программе подаются сведения о пассажирах, сдавших свой багаж в камеру хранения. В первой строке задано текущее время: через двоеточие два целых числа, соответствующие часам (от 00 до 21, ровно 2 символа) и минутам (от 00 до 59, ровно 2 символа). Во второй строке задается количество пассажиров N, которое не меньше 10, но не превосходит 1000. В каждой из последующих N строк находится информация о пассажирах в следующем формате:
<Фамилия> <Время освобождения ячейки>
где <Фамилия> – строка, состоящая не более, чем из 20 символов без пробелов, <Время освобождения ячейки> – через двоеточие два целых числа, соответствующие часам (от 00 до 21, ровно 2 символа) и минутам (от 00 до 59, ровно 2 символа). <Фамилия> и <Время освобождения ячейки> разделены ровно одним пробелом. Пример входных строк:
10:00
3
Иванов 12:00
Петров 10:12
Сидоров 12:12
Программа должна выводить список пассажиров, которые в ближайшие 2 часа должны освободить ячейки. Список должен быть отсортирован в хронологическом порядке освобождения ячеек. В данном случае программа должна вывести
Петров
Иванов
<Фамилия> <Время освобождения ячейки>
где <Фамилия> – строка, состоящая не более, чем из 20 символов без пробелов, <Время освобождения ячейки> – через двоеточие два целых числа, соответствующие часам (от 00 до 21, ровно 2 символа) и минутам (от 00 до 59, ровно 2 символа). <Фамилия> и <Время освобождения ячейки> разделены ровно одним пробелом. Пример входных строк:
10:00
3
Иванов 12:00
Петров 10:12
Сидоров 12:12
Программа должна выводить список пассажиров, которые в ближайшие 2 часа должны освободить ячейки. Список должен быть отсортирован в хронологическом порядке освобождения ячеек. В данном случае программа должна вывести
Петров
Иванов
Решение
def timer(s):
p = s.index(':')
return int(s[:p])*60+int(s[p+1:])
s1=input()
ntime=timer(s1)
pas=[]
t=[]
n=int(input())
for i in range(n):
s2=input()
k=s2.index(' ')
fam=s2[:k]
ti=timer(s2[k+1:])
if ti-ntime <= 120:
if len(pas)==0:
pas.append(fam)
t.append(ti)
else:
f=0
for j in range(len(pas)):
if ti<t[j]:
t.insert(j,ti)
pas.insert(j,fam)
f=1
if f==0:
pas.append(fam)
t.append(ti)
for i in pas:
print(i)
Комментариев нет:
Отправить комментарий