我在很多地方都发现了这个著名的 dp 问题,但我不知道如何解决。
给定一组 n 种类型的矩形 3-D 框,其中第 i^th 框的高度为 h(i),宽度为 w(i),深度为 d(i)(均为实数)。您想创建一个尽可能高的盒子堆叠,但如果下层盒子的 2-D 底座的尺寸每个都严格大于 2-D 盒子的尺寸,您只能将一个盒子堆叠在另一个盒子的顶部。上盒的 D 底座。当然,你可以旋转一个盒子,让任何一面作为它的基础。也允许使用同一类型盒子的多个实例。
这个问题对我来说似乎太复杂了,无法弄清楚步骤。因为它是 3D,所以我得到了高度、宽度和深度的三个序列。但是由于可以交换 3 维,所以问题对我来说变得更加复杂。所以请有人解释在没有交换时解决问题的步骤,然后在交换时如何做。我厌倦了这个问题。所以,请有人解释解决方案的简单方法。