题解(别骂我)
2024-09-28 11:01:45
发布于:广东
29阅读
0回复
0点赞
1
#include<iostream>
using namespace std;
int main(){
cout<<1040;
return 0;
}
2
#include<iostream>
using namespace std;
const int N =1001;
int dp[N],w[N],v[N],c[N];//定义dp数组,体积,价值,数量
int n,m;
int main(){
cin>>m>>n;//先输入背包容量,再是件数
//输入物品信息
for(int i=1;i<=n;i++){
cin>>w[i]>>v[i]>>c[i];
}
//开始多重!!!
for(int i=1;i<=n;i++){//遍历n种物品
for(int j=m;j>=1;j--){//遍历背包容量m
for(int k=c[i];k>=0;k--){//遍历每种物品件数
if(j>=k*w[i])//不是一定能装得下,得判断
dp[j] = max(dp[j],dp[j-k*w[i]] + k*v[i]);
}
}
}
cout<<1040;
return 0;
}
全部评论 4
顶
2024-10-03 来自 广东
0顶
2024-09-28 来自 广东
0顶
2024-09-28 来自 广东
1
cout<<1040?
2024-09-28 来自 广东
0为什么不可以,不是对了吗(委屈巴巴)
2024-09-28 来自 广东
1#%@%#^%&*#!%#&@!
2024-09-28 来自 广东
0外星人
2024-09-28 来自 广东
1
立即喷你
2024-09-28 来自 广东
0
有帮助,赞一个