Рассадка гостей с ограничениями

Учесть вместимость столов и пользовательские пожелания, показать конфликты и печатный план.

Рабочая область

Обработка на устройстве. Файлы и текст не отправляются в аналитику. Ctrl/Cmd+Enter — запуск.

Загрузка локальной обработки…

Настройки

Настройки содержат параметры, без исходных файлов. Автоматического сохранения нет.

Метод и ограничения

Объединяет обязательныеtogether-группы и размещает их безseparate-конфликтов в заданной вместимости. Закреплениеtable позволяет ручную корректировку; неназначенные гости остаются видимыми.

Локальная обработка: до2 млн символов или20 000 записей на источник; до50 000 строк результата. Тяжёлые операции имеют отдельные ограничения и отмену. Измеренный спрос и внешние данные не подставляются.

Методика и примеры

Рассадка гостей с ограничениями

Объединяет обязательные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 гостяИмяВместимостьСвободно после рассадки
T1AАнна20
T1BБорис20
T2CВера20

Показано строк: 3 из 4.

Локальная обработка: до2 млн символов или20 000 записей на источник; до50 000 строк результата. Тяжёлые операции имеют отдельные ограничения и отмену. Измеренный спрос и внешние данные не подставляются.

Источники метода

Следующая задача