Разработать скрипт на Python (задача комбинаторики)

Цена договорная
23 мая 2024, 23:49 • 7 откликов • 56 просмотров
Проект: Оптимальное
размещение участников форума в гостиницах

Задача: Разработать скрипт на Python c
подробными комментариями. Скрипт должен быть универсален, т.е. входные данные
могут меняться (может меняться количество мест в гостиницах, количество
участников). При нехватке мест указать в таблице выходных данных -
"участник не размещен".



Входные данные:

1. Список участников с id, страна участника,
организация участника, категория участника, пол участника, спец.требование участника (категория белый соответсвует столбцу - Только МЖ) (тестовые данные во вложении).

2. Информация по гостиницам (в одной комнате
несколько мест). Название гостиницы, этаж, номер комнаты. Номер комнаты
повторяется в соответствии с наличием мест (тестовые данные во вложении).



Выходные данные:

1. Таблица ексель с распределением участников по
комнатам (пример во вложении).



Срок: 1-2 дня



Правила размещения:

1. Участники одной страны размещаются в одной
гостинице. Допускается размещение нескольких стран в одной гостинице, кроме п.
5.

2. Участники одной организации размещаются
близко. На одном этаже по возможности.

3. Участники категории 1 размещаются отдельно.
Участники категории 2 и категории 3 могут разместиться вместе, но строго
отдельно от категории 1.

4. Участники разных полов строго размещаются
отдельно.

5. Участники с спец.требованиями размещаются в
соответствии с предыдущими правилами + дополнительные правила. Участники с красным
требованием размещаются строго в разных гостиницах. Участники с желтым
требованием размещаются желательно на разных гостиницах (если есть места).
Участники с белым требованием размещаются по правилу: мужской и женский пол на
разных этажах.



Доп. инфо:

Участников мужского пола больше - возможно
следует разместить их первую.

Файлы