星途 • 2年前
using namespace std; int dp[1000005],w[1005],v[1005]; int main(void){
int n,c;
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(j>=w[i]){
dp[j]=max(dp[j],dp[j-w[i]]+v[i]);
}
}
}
cout<<dp[c];
return 0;
}
评论:
请先登录,才能进行评论