Taille maximale du carré pour un nombre inconnu à l'intérieur du rectangle

Si j'ai un jeu de tuiles (carrés), qui peut être n'importe quel nombre et ils sont à remplir un récipient (rectangle) d'une taille inconnue comment puis-je travailler sur la taille maximale des carreaux sans avoir un quelconque d'entre eux se chevauchent.

Donc, si j'ai 2 carreaux et le rectangle est de 100 * 100, puis le max taille du carreau est de 50 * 50. Ce serait aussi le max de la taille de la tuile, si il n'y avait 3 ou 4 tuiles pour cette taille de rectanlgle, qui se trouve juste à être un carré dans cet exemple.

Si le rectanlge était de 100 * 30 et j'ai eu 2 tuiles, la taille maximale de la place serait de 30 * 30, si j'ai 4 carreaux de la taille maximale de 25 * 25.

Comment puis-je le faire par programmation, sans accaparer le processeur en passant par toutes les combinaisons possibles.


J'ai essayer de résumer un peu mieux,
J'ai un:

rectangle/boîte englobante que je dois remplir, autant que possible, sans les tuiles superposées.

Je sais que la hauteur et la largeur du rectangle (mais cela peut changer au cours de l'exécution).

J'ai X nombre de tuiles (cela peut changer au moment de l'exécution), ce sont des carrés.

Aucun des tuiles doivent se chevaucher, ce qui est la taille maximale que chaque tuile peut être. Ils sont tous de la même taille.

source d'informationauteur kenneth