Рассадка гостей с ограничениями
Учесть вместимость столов и пользовательские пожелания, показать конфликты и печатный план.
Методика и примеры
Рассадка гостей с ограничениями
Объединяет обязательныеtogether-группы и размещает их безseparate-конфликтов в заданной вместимости. Закреплениеtable позволяет ручную корректировку; неназначенные гости остаются видимыми.
Входные данные примера
Основной источник
[
{
"id": "A",
"name": "Анна"
},
{
"id": "B",
"name": "Борис"
},
{
"id": "C",
"name": "Вера"
},
{
"id": "D",
"name": "Глеб"
}
]Второй источник
[
{
"id": "T1",
"capacity": 2
},
{
"id": "T2",
"capacity": 2
}
]Третий источник
[
{
"a": "A",
"b": "B",
"kind": "together"
},
{
"a": "A",
"b": "C",
"kind": "separate"
}
]Результат примера
| Стол | ID гостя | Имя | Вместимость | Свободно после рассадки |
|---|---|---|---|---|
| T1 | A | Анна | 2 | 0 |
| T1 | B | Борис | 2 | 0 |
| T2 | C | Вера | 2 | 0 |
Показано строк: 3 из 4.
Локальная обработка: до2 млн символов или20 000 записей на источник; до50 000 строк результата. Тяжёлые операции имеют отдельные ограничения и отмену. Измеренный спрос и внешние данные не подставляются.
