分组背包
2026-06-12 19:55:29
发布于:上海
万能开头@78鼠鼠 @156****6690@仰天长啸你爹驾到@AC酱
struct node{
int w,v;
};
vector<node>ve[114514];
for(int i=1;i<=t;i++){
for(int j=0;j<=c;j++){
dp[i][j]=dp[i-1][j];//不拿物品
for(int k=0;k<ve[i].size();k++){
if(j>=ve[i][k].w)dp[i][j]=max(dp[i][j],dp[i-1][j-ve[i][k].w]+ve[i][k].v);
}
}
}
溢位
struct node{
int w,v;
};
vector<node>ve[114514];
int main(){
int c,n,t;
cin>>c>>n>>t;
int dp[114514];
for(int i=0;i<n;i++){
int W,C,P;
cin>>W>>C>>P;
ve[P].push_back({W,C});
}
for(int i=1;i<=t;i++){
if(ve[i].size()==0)continue;
for(int j=c;j>=0;j--){
for(int k=0;k<ve[i].size();k++){
if(j>=ve[i][k].w)dp[j]=max(dp[j],dp[j-ve[i][k].w]+ve[i][k].v);
}
}
}cout<<dp[c];
}
全部评论 4
- 置顶
请某些人不要在此评论区发神奇数字,神奇字母和神秘表情包,不要乱打键盘和不要乱点赞
2天前 来自 上海
4还有神秘小网站
2天前 来自 上海
2也不要发神秘小图片
2天前 来自 上海
1
d
3天前 来自 上海
3
1小时前 来自 浙江
0和溢位
1小时前 来自 上海
0我跟我同学讲的
1小时前 来自 上海
0哦哦哦
30秒前 来自 浙江
0
dssadfaf
1小时前 来自 浙江
0


















有帮助,赞一个