装载问题(load)
这题好像就是个01背包啊。。。
#include<iostream> using namespace std; int w; int dp[60]; int main() { int n,c; cin>>n>>c; int sum=0; for(int i=1;i<=n;i++) { cin>>w; for(int j=c;j>=w;j--) { dp[j]=max(dp[j],dp[j-w]+w); } } cout<<dp[c]; return 0; }
这题好像就是个01背包啊。。。
#include<iostream> using namespace std; int w; int dp[60]; int main() { int n,c; cin>>n>>c; int sum=0; for(int i=1;i<=n;i++) { cin>>w; for(int j=c;j>=w;j--) { dp[j]=max(dp[j],dp[j-w]+w); } } cout<<dp[c]; return 0; }