經典的揹包問題

2022-05-03 17:09:07 字數 565 閱讀 3844

揹包問題i

難度級別:b; 執行時間限制:1000ms; 執行空間限制:51200kb; **長度限制:2000000b

試題描述

有乙個揹包容積為 v 和 n 個物品,並給出每個物品有乙個體積。要求從 n 個物品中,任取若干個裝入揹包內,使揹包的剩餘空間為最小。

輸入第一行兩個正整數 v 和 n,分別表示揹包的容積和待裝物品的個數;第二行包括 n 個正整數,表示 n 個物品的體積,兩兩之間有乙個空格分隔。

輸出乙個數,表示揹包中剩餘空間的最小值

輸入示例

24 6

8 3 12 7 9 7

輸出示例

0其他說明

資料範圍:0

真是太簡單了,轉移方程:dp[j]=max(dp[j],dp[j-a[i]]+a[i]);。

1 #include2 #include3

using

namespace

std;

4int

main() 5

16 cout

17 }

view code

經典揹包問題 01揹包 完全揹包 多重揹包

1 for int i 0 i 2for int j w j size i j 3 f j max f j f j size i value i 1 for int i 0 i 2for int j size i j w j 3 f j max f j f j size i value i f w ...

經典01揹包問題

乙個旅行者有乙個最多能裝m公斤的揹包,現在有n件物品,它們的重量分別是w1,w2,wn,它們的價值分別為c1,c2,cn。求旅行者能獲得最大總價值。第 1 行 兩個整數,m 揹包容量,m 200 和n 物品數量,n 30 第 2 到 n 1行 每行兩個整數 wi,ci,表示每個物品的重量和價值。10...

經典揹包系列問題

揹包問題i 試題描述 有乙個揹包容積為 v 和 n 個物品,並給出每個物品有乙個體積。要求從 n 個物品中,任取若干個裝入揹包內,使揹包的剩餘空間為最小。輸入第一行兩個正整數 v 和 n,分別表示揹包的容積和待裝物品的個數 第二行包括 n 個正整數,表示 n 個物品的體積,兩兩之間有乙個空格分隔。輸...