[背包问题]
2026-09-19 20:32:29
发布于:广东
90阅读
0回复
0点赞
首先,这道题很明显,是一个背包,用模板就行了
#include<bits/stdc++.h>
using namespace std;
long long n,m,w[10010],v[10001],dp[100010],maxx=-1e8;
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++)cin>>w[i]>>v[i];
for(int i=1;i<=n;i++){
for(int j=m;j>=w[i];j--){//倒序,否责成完全背包
dp[j]=max(dp[j],dp[j-w[i]]+v[i]);
}
}
cout<<dp[m]<<endl;
return 0;
}
终于有赞了
这里空空如也







有帮助,赞一个