Мозаика прямоугольников разного размера

Я ищу некоторые указатели на алгоритмы, которые должны позволять разбивать прямоугольники разного размера без перекрытия.

Имея набор прямоугольников разного размера, разместите их на площади размером В x Ш без перекрытия. Цель состоит в том, чтобы максимизировать используемое пространство или, наоборот, -минимизировать площадь зазоров. Если места недостаточно, переходите ко второй области того же размера и так далее.

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

Я не ищу готовый код, просто любопытно, какие подходы/алгоритмы лучше всего использовать для решения этой проблемы.

5
задан Vladislavs Dovgalecs 30 July 2012 в 14:59
поделиться