Максимальный размер квадрата для неизвестного числа внутри прямоугольника

Если у меня есть набор плиток (квадратов), который может быть любым числом, и они должны заполнить контейнер (прямоугольник) неизвестного размера, как мне определить максимальный размер плиток, не перекрывая ни одну из них.

Таким образом, если у меня есть 2 плитки, а прямоугольник равен 100 * 100, то максимальный размер плитки будет 50 * 50. Это также будет максимальный размер плитки, если для этого размера прямоугольника было 3 или 4 плитки, что так и происходит. быть квадратом в этом примере.

Если прямоугольник был 100 * 30 и у меня было 2 плитки, максимальный размер квадрата был бы 30 * 30, если у меня 4 плитки, максимальный размер был бы 25 * 25.

Как я могу сделать это программно, не перегружая процессор, пройдя все возможные комбинации.

Я пытаюсь подвести итог немного лучше, у меня есть:

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

Я знаю высоту и ширину прямоугольника (но это может измениться во время выполнения).

У меня есть X количество плиток (это может измениться во время выполнения), это квадраты.

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

Ответы на вопрос(10)

Ваш ответ на вопрос