好题解(独此一家)
2025-11-01 20:39:49
发布于:广东
1阅读
0回复
0点赞
#include<iostream>
using namespace std;
int dp[100005],w[10005],v[200005];
int main(){
int m,n;
cin>>m>>n;
for(int i=1;i<=n;i++){
cin>>w[i]>>v[i];
v[i] = v[i]*w[i];
}
for(int i=1;i<=n;i++){
for(int j=m;j>=w[i];j--){
dp[j]=max(dp[j-w[i]]+v[i],dp[j]);
}
}
cout<<dp[m];
return 0;
}
全部评论 1
有帮助的点个赞吧
昨天 来自 广东
0







有帮助,赞一个