【发布时间】:2008-10-30 19:43:46
【问题描述】:
我有一个程序可以计算将矩形拼接在一起所占用的最小面积。
输入:不同高度和宽度的矩形。
输出:一个包含所有这些矩形的矩形。
规则:不能转动或滚动矩形,它们不能重叠。
我了解这是相关的或可能被定义为装箱问题(NP-hard)。然而,我为那些找到的算法通常会限制例如宽度。我没有这样的限制,唯一的目标是使生成的区域尽可能小。
关于什么算法适合得到一个体面的解决方案的任何指针?
【问题讨论】:
-
还有其他人发现作业有问题吗?
-
不,这在游戏中很常见,它被称为纹理打包。
-
实际上我正在自动将图标和图像转换为 css sprite,我希望结果尽可能好。