注意区分与01背包的不同,v的遍历为正向遍历。
for(int i=1;i<=n;i++)
{
for(int v=w[i];v<=V;v++)
{
dp[v]=max(dp[v],dp[v-w[i]]+c[i]);
}
}
注意区分与01背包的不同,v的遍历为正向遍历。
for(int i=1;i<=n;i++)
{
for(int v=w[i];v<=V;v++)
{
dp[v]=max(dp[v],dp[v-w[i]]+c[i]);
}
}
276
2466
1371

被折叠的 条评论
为什么被折叠?