洛谷 P2871 [USACO07DEC] Charm Bracelet S 题解
题目链接
洛谷 P2871 [USACO07DEC] Charm Bracelet S
思路分析
0-1 背包模板题,详见洛谷 P1048 [NOIP 2005 普及组] 采药 题解。
代码呈现
#include<bits/stdc++.h>
using namespace std;
const int N=3405,M=12885;
int n,m;
int w[N],d[N],dp[M];
int main(){
scanf("%d%d",&n,&m);
for (int i=1;i<=n;++i) scanf("%d%d",w+i,d+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]]+d[i]);
}
printf("%d",dp[m]);
return 0;
}

浙公网安备 33010602011771号