欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

【背包DP】背包问题

时间:2023-06-03
完全背包问题 题目 解释

因为每个物品可以选择无限件,所以我们决策使用一个物品时,需要考虑它的件数因此表达式为第一个公式的形式 再观察第二个表达式f[i,j-v]的形式,与第一个只相差一个w[i]因此递推关系可以表示成f(i,j)=max(f(i,j-v)+w,f(i-1,j); 代码段

#includeusing namespace std;const int N=1010;int f[N][N],v[N],w[N];int n,m;int main(){ cin>>n>>m; for(int i=1;i>v[i]>>w[i]; for(int i=1;i<=n;i++) for(int j=0;j<=m;j++) { f[i][j]=f[i-1][j]; if(j>=v[i]) f[i][j]=max(f[i][j],f[i][j-v[i]]+w[i]); } cout<

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。