【发布时间】:2011-09-02 14:21:28
【问题描述】:
我遇到了一些问题。我有一个项目列表,其中有一个字段说明它们可以放入什么类型的盒子。
例如:
item | boxtype | Quantity
-------------------------------
item1 | A-10,C-20 | 3
item2 | C-10,D-20 | 2
boxtype-column中的字母是box类型,后面的数字是可以装多少个item。
我想弄清楚如何使用最少的盒子。我最初只是将数量除以字母编号,如果小于 1,我使用那个框。
但在上述情况下,我将使用 Box A 放置 item1,而在 item2 上我必须使用 C。最好将 box C 用于两个项目,因为这两个项目都适合。
当然,这只是问题的简化版本,如果需要,我可以用更明确的示例进行详细说明。我只是想知道我可以使用数组进行所有排序吗?
感谢您在正确方向上的任何一点
编辑 - 从这个数组中添加这个数组,是否有一种简单的方法可以测试字母的条件以确定应该使用哪种盒子类型?
Array
(
[AC] => Array
(
[A] => 0.75
[C] => 0.15
)
[CD] => Array
(
[C] => 0.2
[D] => 0.1
)
)
【问题讨论】:
-
这个真的一点都不清楚。
-
所以你基本上需要一个算法来挑选完美的盒子?如果只有少量物品,请选择最小的盒子,如果有很多,请选择最合适的盒子(对于所有物品来说都足够大)。我说的对吗?
-
有点,想法是用最小的盒子和最少的盒子。我遇到的问题是当有很多项目时。只有一个很简单,2 个不相关的盒子类型很简单,但是当多个项目具有 1 个相似的盒子类型和 1 个不同的盒子类型并试图找出哪些盒子变得复杂时。
-
所以你不仅有很多物品,你还把这些物品混合在一个盒子里?假设有 2 个项目 1、1 个项目 2 和 3 个项目 3,哪个盒子对所有这些都足够大。我说的对吗?
-
是的,一件物品可以装进多个盒子里,而且同一个盒子里可以放不止一件不同的物品。我所拥有的是适合特定盒子的物品的数量,但我没有所述物品的尺寸或盒子的尺寸。如果我有这些东西,那么我可以算出立方英寸来得到一个很好的猜测。