№ 7602 Досрочная волна 2023 (Уровень: Средний) В аэропорту есть камера хранения из K ячеек, которые пронумерованы с 1. Принимаемый багаж кладется в свободную ячейку с минимальным номером. Известно время, когда пассажиры сдают и забирают багаж (в минутах с начала суток). Ячейка доступна для багажа, начиная со следующей минуты, после окончания срока хранения. Если свободных ячеек не находится, то багаж не принимается в камеру хранения. Найдите количество багажа, которое будет сдано в камеры за 24 часа и номер ячейки, в которую сдаст багаж последний пассажир. Входные данные В первой строке входного файла находится число K – количество ячеек в камере хранения, во второй строке файла число N – количество пассажиров, сдающих багаж (натуральное число, не превышающее 1000). Каждая из следующих N строк содержит два натуральных числа, не превышающих 1440: время сдачи багажа и время выдачи багажа. Выходные данные Программа должна вывести два числа: количество сданных в камеру хранения багажа и номер ячейки, в которую примут багаж у последнего пассажира, который сможет сдать багаж. Типовой пример организации данных: 2 5 30 60 40 60 50 1110 61 1010 1100 1440 Для указанного примера багаж смогут сдать первый, второй, четвёртый и пятый пассажир. Последний пассажир сдаст свой багаж в ячейку один, так как к этому моменту первая и вторая ячейка будут свободны. Файлы к заданию:26.txt |
a=[[int(n) for n in x.split()] for x in open('26_7602.txt')]
k=a[0][0]
del(a[0])
del(a[0])
b=[0]*k
a.sort(key=lambda x:x[0])
kol=0
for i in range(len(a)):
for j in range(len(b)):
if b[j]==0 or b[j]<a[i][0]:
b[j]=a[i][1]
kol=kol+1
t=j+1
break
print(kol,t)
586 3
kege