有一批貨物需要包車運送,【110,80】100是重量,80是體積。假設按重量計費,有車型N,車型能運輸的重量體積是【X,Y】,則車的運費=X*(裝貨費+卸貨費)+提貨費,同種車型可以重復,求運費最少的包車方案(所有車型加起來的重量、體積要都大于貨物的重量體積)。
舉例說明,當前訂單【110,80】需要運送,已知有車型A【10,20】A的裝貨費、卸貨費分別是20、30,提貨費30。車型B【20,30】,B的裝貨費、卸貨費分別是15、30,提貨費45,運費最少的方案是5*B +1*A,費用=5*20*(15+30) + 5*45 + 1*10*(20+30)+ 1*30 = 5255
其中車型不僅僅2種,可以N種,如果重量滿足了,但是體積不滿足,需要不停的加車,則新加的車運費只需提貨費,X*(裝貨費+卸貨費)=0
目前了解貪心、動態規劃都滿足不了這個需求,如果用深度搜索的話,會很耗時,我自己用遞回可以遍歷,但是性能很差。不知道有沒有大佬了解其他演算法可以解決這種問題
uj5u.com熱心網友回復:
問題的關鍵點就是要同時滿足體積、重量,但是費用計算只以重量去乘以(裝貨費+卸貨費),相當于一輛車的費用并不是固定的。而且為了滿足體積重量,前面5輛車滿足重量了,后面新加的車只是為了滿足體積,運費也不需要裝貨費+卸貨費,只要提貨費
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/257948.html
標籤:Java相關
上一篇:二進制運算
