背包容量为V,物品种类为N,每种大小为v1,v2....vn, 并且数目无数个,即为完全背包问题。可转换为每种物品有V/vi个, 价值均为wi。
状态转换方程:
f[i][v]=max{f[i-1][v],f[i][v-c[i]]+w[i]}。
伪代码:
for(int i=0;i<物品个数;i++)
for(int V=0;V<背包容量;V++)
f[i][v]=max{f[i-1][v],f[i][v-c[i]]+w[i]};
背包容量为V,物品种类为N,每种大小为v1,v2....vn, 并且数目无数个,即为完全背包问题。可转换为每种物品有V/vi个, 价值均为wi。
状态转换方程:
f[i][v]=max{f[i-1][v],f[i][v-c[i]]+w[i]}。
伪代码:
for(int i=0;i<物品个数;i++)
for(int V=0;V<背包容量;V++)
f[i][v]=max{f[i-1][v],f[i][v-c[i]]+w[i]};