Автосалон сдает в аренду редкий Aston Martin DBR1 1956 года выпуска (из которого Aston Martin только когда-либо делал 5). Поскольку существует так много запросов на аренду, дилер решает разместить заказы на весь год вперед. Он собирает запросы и теперь должен выяснить, какие запросы следует принять.
Создайте сценарий, который выбирает запросы на аренду таким образом, чтобы наибольшее количество отдельных клиентов могли ездить в редком Астон-Мартине. Входные данные сценария представляют собой матрицу дней года, каждая строка представляет начальный и конечный дни запроса. На выходе должны быть индексы клиентов и их дневные диапазоны. Рекомендуется сначала спланировать свой код и написать свои собственные функции. В верхней части скрипта добавьте блок комментария с описанием того, как работает ваш код.
Пример списка с этими временными интервалами: list = [10 20; 9 15; 16 17; 21 100;];
(Также следуетработать для списка с 100 временными интервалами)
Мы могли бы выбрать клиентов 1 и 4, но тогда 2 и 3 невозможны, что привело бы к двум счастливым клиентам. В качестве альтернативы мы могли бы выбрать запросы 2, 3 и 4. Следовательно, три счастливых клиента являются оптимальными здесь.
Результат будет: клиенты = [2, 3, 4]
, дни = [9, 15; 16, 17; 21, 100]
Все IМожно подумать, проверяет, пересекаются ли интервалы, но я понятия не имею, как сделать общий оптимальный выбор.