При онлайн-покупке билета на концерт известно, какие места в зале уже
Условие
При онлайн-покупке билета на концерт известно, какие места в зале уже заняты. Необходимо купить билет на такое место в ряду, чтобы перед ним как можно больше идущих подряд кресел с таким же номером было свободно. Если места, удовлетворяющие этому условию, есть в нескольких рядах, то нужно выбрать ряд, расположенный как можно ближе к сцене. В ответе запишите два целых числа: искомый номер ряда и количество свободных кресел перед выбранным местом. Нумерация рядов и мест ведётся с 1. Гарантируется, что хотя бы одно такое место в зале есть.
Задание 26Входные данные.В первой строке входного файла находятся три числа: N — количество занятых мест в зале (целое положительное число, не превышающее 10 000), М — количество рядов (целое положительное число, не превышающее 100 000) и K — количество мест в каждом ряду (целое положительное число, не превышающее 100 000). В следующих N строках находятся пары натуральных чисел: номер ряда и номер места занятого кресла соответственно (первое число не превышает значения M, а второе — K).Выходные данные.
Два целых положительных числа: искомый номер ряда и количество свободных кресел перед выбранным местом. Ответ:
Ответ
Ответ и полный разбор откроются после входа
Посмотреть ответРешение по шагам
Как рассуждать
Решение. Приведём решение на языке Python.File = open("pr1.txt")N, M, K = map(int, File.readline().split())places = [] for i in range(N): row, place = map(int, File.readline().split()) places.append([place, row]) places.sort()maxCount = 0minRow = 0for p in range(1, N): previousPlace = places[p - 1][0] previousRow = places[p - 1][1] currentPlace = places[p][0] currentRow = places[p][1] if currentPlace == previousPlace: count = (currentRow -
Осталось ещё 6 шагов
- (previousRow +…
if maxCount < count: maxCount = count minRow…
elif currentPlace - previousPlace == 1: count…
if maxCount < count: maxCount = count minRow…
else: maxCount = K - 1 minRow = M…
Приведём другое решение на языке Python.data…
Бесплатно · займёт минуту