赵冉杰 • 2年前
using namespace std; int dp[1000005],w[10005],v[10005],n,c; int main() {
cin>>n>>c;
for(int i=1;i<=n;i++)
cin>>w[i];
for(int i=1;i<=n;i++)
cin>>v[i];
for(int i=1;i<=n;i++)
for(int j=c;j>=1;j--)
if(w[i]<=j)
for(int k=0;k<=j/w[i];k++)
dp[j]=max(dp[j-k*w[i]]+k*v[i],dp[j]);
cout<<dp[c];
return 0;
}
评论:
请先登录,才能进行评论