думаю, что алгоритм в сущности должен быть тривиальным, но как-то с ходу ничего гениального в голову не приходит. может, коллективный разум что подскажет?
дано: два множества A и B. каждое из них представляет собой набор неких блоков, которые в свою очередь имеют какой-то произвольный размер.
задача: распределить блоки из множества A в множестве B таким образом, чтобы все блоки поместились или же сказать, что такое размещение не возможно если это так. при размещении блоки не могут делиться или перекрывать друг друга. полученное взаимное расположение блоков из A в B друг относительно друга не важно.
пример1: A = {10, 10, 10}, B = {40}. укладывая блоки из A в B последовательно один за другим мы достигнем желаемого и ещё останется хвостик[и] - распределение возможно.
пример2: A = {10, 20}, B = {15, 25}. первый идёт в первый, второй во второй - распределение возможно.
пример3: A = {10, 20, 30}, B = {10, 20, 10, 20 }. распределение невозможно.
ps: реальные размеры множеств могут быть достаточно большими, i.e. тысячи/сотни тысяч объектов в каждом из них.
// wbr


Ответ на:
комментарий
от wfrr

Ответ на:
комментарий
от nikolayd

Ответ на:
комментарий
от klalafuda

Ответ на:
комментарий
от bik

Ответ на:
комментарий
от bik

Ответ на:
комментарий
от wfrr

Ответ на:
комментарий
от klalafuda

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум алгоритм оптимальной упаковки (2009)
- Форум Посоветуте оптимальный алгоритм поиска медианы (2018)
- Форум Нужен оптимальный алгоритм объединения двух упорядоченных массивов. (2021)
- Форум О заполнении трекера (2016)
- Форум Bash заполнение массива (2019)
- Форум Диалоговое заполнение файла (2014)
- Форум Заполнение квадратичной Безье (2014)
- Форум Заполнение пустого места (2013)
- Форум автоматическое заполнение .config (2021)
- Форум [mysql] Заполнение диска (2008)