我需要以一种最佳方式来填充框。
应放在盒子中的产品的重量和信息,说明可以在盒子中放置多少产品。

prod1 : weight 9 kilogramm and info 5 (5 of prod1 could be placed in a box)
prod2 : weight 8 kilogramm and info 4 (4 of prod2 could be placed in a box)
prod3 : weight 7,5 kilogramm and info 6 (6 of prod3 could be placed in a box)
prod4 : weight 7,5 kilogramm and info 3 (3 of prod4 could be placed in a box)
prod5 : weight 27 kilogramm and info 2 (2 of prod5 could be placed in a box )

现在,我必须编写一种算法,以最好的方式填充框。
例如:
客户订单7 * prod1和1 prod3
我的pgm应该装2个盒子。
1 contains 5 * prod1
1 contains 2 * prod1 and 1* prod1

我的大脑知道这一点,但我不知道如何编码。
我必须从最大的产品开始-每盒商品数最少的产品。
但是,如果我在包装盒中有空间,则必须寻找其他-可以放在包装盒中的较小产品。

我希望有人能理解我的描述。

再见

最佳答案

这是一个经典的背包问题。我认为将其他人开发的相应算法粘贴到这里并不算麻烦。所以看这里
http://en.wikipedia.org/wiki/Knapsack_problem,您会发现自己想要的东西。

07-24 19:40