- robin 的博客
多重背包
- @ 2026-4-18 15:05:52
#include<bits/stdc++.h>
using namespace std;
int m[10005],v[10005],dp[10005],n,t,x,y,z,k;
int main()
{
cin>>n>>t;
for(int i=1;i<=n;i++){
cin>>x>>y>>z;
for(int j=1;j<=z;j++){
k++;
m[k]=x;
v[k]=y;
}
}
for(int i=1;i<=n;i++){
for(int j=n;j>w[i];j--){
dp[i]=max(dp[j],dp[j-w[i]]+v[i]);
}
}
cout<<dp[t];
return 0;
}