洛谷 P2925 [USACO08DEC]Hay For Sale S
01背包问题。
详见背包九讲。
#include<cstdio> #include<algorithm> #include<cstring> using namespace std; typedef long long ll; int c,h,w[5005],dp[50005]; int main(){ scanf("%d%d",&c,&h); for(int i=0;i<h;i++){ scanf("%d",&w[i]); } for(int i=0;i<h;i++){ for(int j=c;j>=w[i];j--) dp[j]=max(dp[j],dp[j-w[i]]+w[i]); } printf("%d",dp[c]); }

浙公网安备 33010602011771号