Суть задачи: есть большой прямоугольник (5 колонок, 100 рядов), и есть некоторое количество прямоугольников по-меньше (обычно не больше 7 штук). Нужно расположить маленькие в большой (без взаимных пересечений, естественно). Абсолютно точно известно что общая площадь маленьких прямоугольников меньше или равна площади большого. На данный момент это решается тупым перебором комбинаций пока не находится приемлемый вариант. Как бы это сделать оптимальнее и быстрее?
Проблема в том что таких задачек где-то под 20 тысяч штук, и если действовать перебором, то количество вариантов для проверки зашкаливает близко к 90 миллионам.