26.06 Распределение объектов по местам (хранение багажа, парковки, кафе, гостиницы)
Ошибка.
Попробуйте повторить позже
Известно, что путь межрегионального автобуса проходит через А населенных пунктов. У контроллёра есть список, содержащий В заявок на поездку, при этом в каждой заявке указано на какой остановке пассажир будет садиться в автобус и на какой остановке он выйдет. Известно, что в автобусе всего С мест. На остановках сначала происходит высадка пассажиров, затем посадка.
Когда пассажиры приходят на посадку, контроллёр в первую очередь пропускает того, чей путь дольше остальных. При этом место пассажира определеяется как свободное и чей номер минимален.
Определите количество пассажиров, которые смогут добраться до пункта своего назначения и в скольких участках между соседними городами будут полностью заняты места.
Входные данные. В первой строке файла задано три числа: A (2 M
2000) – количество населенных пунктов,
в которых останавливается автобус, C (1
K
1000) – количество мест в автобусе и B (1
N
10000) –
количество пассажиров, желающих проехать на автобусе. В каждой из последующих N строк располагаются пары
чисел: сначала номер населенного пункта, откуда хочет начать свою поездку пассажир, затем номер населенного
пункта, где пассажир собирается сойти с автобуса.
Выходные данные. Два числа: сначала количество пассажиров, которые смогут добраться до нужной им станции, затем количество участков между соседними городами, в которых места будут полностью заняты.
with open(’26_1.txt’) as f: m,k,n=map(int, f.readline().split()) s=[list(map(int, f.readline().split())) for _ in range(n)] s.sort(key=lambda x: (x[0], -x[1])) per=[[0]*(m+1) for _ in range(k)] cnt=0 for st,fn in s: for i in range(k): if per[i][st]==0: cnt+=1 for j in range(st,fn): per[i][j]=1 break c_per=0 for p in range(1,m+1): if all(per[i][p]==1 for i in range(k)): c_per+=1 print(cnt, c_per)
Специальные программы

Программа
лояльности v2.0
Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!
Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.

Бесплатное онлайн-обучение
Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.

Налоговые вычеты
Узнай, как получить налоговый вычет при оплате обучения в «Школково».

Специальное предложение
для учителей
Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!

Вернём деньги за курс
за твою сотку на ЕГЭ
Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!