2013-12-18 62 views
1

我需要以最佳方式填充框。 應放置在箱子中的產品有重量和信息可以將多少件產品放入箱子中。填充盒/包裹的算法

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) 

現在我必須編寫一個算法來以最佳方式填充框。 例如: cust訂單7 * prod1和1 prod3 我的pgm應該製作2個盒子。

1 contains 5 * prod1 
1 contains 2 * prod1 and 1* prod1 

我的大腦知道,但我不知道如何編碼它。 我必須從最大的產品開始 - 每箱產品數量最少的產品。 但是,如果我在盒子裏有空間,我必須尋找其他的 - 可以放在盒子裏的較小的產品。

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

bye

+0

什麼是填充盒子的「最佳方式」?除最後一個盒子外,所有盒子中的空餘空間是否最少?或者在所有的盒子裏等於空的空間?盒子的大小是多少? – Dialecticus

+0

它應該是除最後一個之外的所有盒子中最少的空白空間 - 盒子尺寸應該是不相關的,但最大重量ist 50 Kilogramms – user1121575

+1

這是一個Bin包裝問題,帶有額外的最大產品數量限制每個箱的特定類型。 –

回答

2

這是一個經典的揹包問題。我不認爲在這裏粘貼由其他人開發的相應算法是不夠的。所以看這裏 http://en.wikipedia.org/wiki/Knapsack_problem,你會發現exaclty你想要什麼。

+0

不完全是一個揹包問題。在我看來,這更像是一個裝箱問題。 –