1) отсортировать прямоугольники по убыванию площади
2) в угол пустого квадрата помещается наибольший прямоугольник
3) пустое место после размещения ветвится на 2 прямоугольника - большой и маленький, запоминаем, сортируем тоже.
4) берем следующий прямоугольник размещаем его в наименьшее подходящее пустое место, нужно только понять в какой угол, для начала тупо в произвольный.
5) если прямоугольники или пустые места не кончились, go to 3.