【发布时间】:2011-05-30 21:59:10
【问题描述】:
请帮我找到解决这个问题的好办法。
我们有 n 个 3 维的盒子。我们可以定位它们,并且我们希望将它们放在另一个之上以获得最大高度。如果 2 个维度(宽度和长度)小于下面盒子的尺寸,我们可以将一个盒子放在另一个盒子的顶部。
例如,我们有 3 个维度 w*D*h,我们可以将其显示为 (h*d,d*h,w*d,d*W,h*w,w*h) 请帮我用图论解决它。 在这个问题中,我们不能将(2*3)放在(2*4)之上,因为它具有相同的宽度。所以二维应该小于盒子
【问题讨论】:
-
有什么具体的理由用图论来解决吗?
-
请帮忙解决什么?您已经说过如何堆叠盒子,但您没有提出问题。
-
@Saurabh 因为他可能需要证明这是 NP 完全的。我在考虑作业标签。
-
这个问题之前已经提出:stackoverflow.com/questions/4511086/box-stacking-problem(我认为当前投票最多的答案是不正确的,因为它克隆了盒子)和更早的stackoverflow.com/questions/2329492/box-stacking-problem/…(当前接受的答案很简单错误;评论给出了反例)。
标签: algorithm graph graph-algorithm