Входной файл содержит заявки на проведение мероприятий в конференц-зале
Условие
Входной файл содержит заявки на проведение мероприятий в конференц-зале в течение одного дня. В каждой заявке указано время начала и время окончания мероприятия в минутах от начала суток. Если время проведения двух или более мероприятий пересекается, то провести можно не более одного из них. Между окончанием одного мероприятия и началом следующего необходим перерыв не менее 20 минут.Определите, какое максимальное количество мероприятий можно провести в конференц-зале в этот день и каким при этом может быть максимально возможный перерыв между двумя последними мероприятиями.Задание 26Входные данные.Первая строка входного файла содержит целое число N (N ≤ 1000) — общее количество заявок. Каждая из следующих N строк описывает одну заявку и содержит 2 целых числа, обозначающих время начала и время окончания мероприятия в минутах с начала суток. Все числа не превосходят 1440, второе число в каждой строке больше первого.В ответе запишите два целых числа: сначала максимальное количество мероприятий, которые можно провести в этот день, затем — максимально возможный при таком количестве мероприятий перерыв между двумя последними мероприятиями. Ответ:
Ответ
1652
Решение по шагам
Как рассуждать
Решение. Приведем решение на языке Python.f = open('26.txt').readlines()[1:]f = sorted([list(map(int, i.split())) for i in f], key=lambda x: x[1])otv1 = [f[0]]for x in f[1:]: if x[0] > otv1[-1][1] + 20: otv1 += [x]f = list(filter(lambda x: x[0] > otv1[-2][1] + 20, f))print(len(otv1), max(i[0] - otv1[-2][1] for i in f)) Ответ: 16 52.
Осталось ещё 1 шаг — откроются после входа:
- Полный разбор с проверкой ответа
Бесплатно · займёт минуту