Форум » Массивы, сортировка, работа с файлами » Задача 6320. Не сходится ответ. » Ответить

Задача 6320. Не сходится ответ.

MercuL`: Вот код: [pre2] file = open('26-115.txt') n, m = map(int, file.readline().split()) trainers = [] for i in range(n): trainers.append([0]) visitors = [] for i in file: arr, dep = map(int, i.split()) visitors.append([arr, dep]) # Создаем двумерный список со временем прихода и ухода. visitors.sort(key=lambda x: x[0]) # Сортируем по времени прихода, если я правильно понимаю, от этого порядок посетителей с одинаковым верменем прихода не изменится. for i in range(len(visitors)): for j in range(n): # Перебираем все тренажеры if trainers[j][-1] + 1 <= visitors[ i][0]: # Сравниваем время прихода текущего посетителя со временем предыдущего + 1 минута т. е. следующая. trainers[j].append(visitors[ i][1]) break # Нашли свободный тренажер, дальше не сомтрим. served = 0 mx_time = 0 mx_train = 0 for i in range(n): if trainers[ i][-1] > mx_time: mx_time = trainers[ i][-1] mx_train = i + 1 served += len(trainers[ i]) - 1 # Вычитаем 1, поскольку каждый элемент списка начинается с 0. print('Количесвто посетитиелей: ', served, '. Время последнего посетителя: ', mx_time,'. Тренажер последнего посетителя: ', mx_train, '.', sep='') [/pre2] Ответ на первый вопрос получился верным - 1269. На второй же вопрос ответ не сходится. У меня получается 26 вместо 41. Буду благодарен, если поможете найти ошибку.

Ответов - 1

Поляков: Это задача 26.115 из основного сборника, решение есть на сайте.



полная версия страницы