有乙個箱子容量為vvv(正整數,0≤v≤200000 \le v \le 200000≤v≤20000),同時有nnn個物品(0要求n個物品中,任取若干個裝入箱內,使箱子的剩餘空間為最小。
解法:動態規劃(水題)
先求解狀態轉移方程:
對於每乙個物體,都有兩種狀態:裝 與不裝
那麼,對於任意重量m的最大價值 f (m) = max ( f ( m - w[i] ) + w[i], f (m) )(w為重量(即價值))
即對每種分情況都考慮到,相比較下取較大的數,加和就是全域性最優解!
演算法//只有體積,沒有價值
#include
using namespace std;
const int maxnum[20006];
int dp[maxnum];
int v[50],n,w;
int main()
}
洛谷 P1047 裝箱問題 01揹包
有乙個箱子容量為 vv v 正整數,0 v 200000 le v le 200000 v 20 000 同時有 nn n 個物品 0 030,每個物品有乙個體積 正整數 要求 nn n 個物品中,任取若干個裝入箱內,使箱子的剩餘空間為最小。輸入格式 111 個整數,表示箱子容量111 個整數,表示...
洛谷p1047題解
題目 題目描述 某校大門外長度為l的馬路上有一排樹,每兩棵相鄰的樹之間的間隔都是1公尺。我們可以把馬路看成乙個數軸,馬路的一端在數軸l的位置,另一端在ll的位置 數軸上的每個整數點,即0,1,2,l0,1,2,l,都種有一棵樹。由於馬路上有一些區域要用來建地鐵。這些區域用它們在數軸上的起始點和終止點...
P1047 校門外的樹
某校大門外長度為l的馬路上有一排樹,每兩棵相鄰的樹之間的間隔都是1公尺。我們可以把馬路看成乙個數軸,馬路的一端在數軸0的位置,另一端在l的位置 數軸上的每個整數點,即0,1,2,l,都種有一棵樹。由於馬路上有一些區域要用來建地鐵。這些區域用它們在數軸上的起始點和終止點表示。已知任一區域的起始點和終止...