样例输入
4 6
1 4
2 6
3 12
2 7
样例输出
23
01背包模板;
题意:
如何装物品能让幸运值最大;
Accept Code :
#include <stdio.h>
#include <string.h>
#define max(a,b) a>b?a:b
int v[4005];
int w[4005];
int dp[10050];
int main()
{
int n,m,i,j,k;
while(scanf("%d%d", &n,&m)!=EOF)
{
memset(dp,0,sizeof(dp));
for(i=1; i<=n; i++)
scanf("%d %d", &w[i],&v[i]);
for(i=1; i<=n; i++)
{
for(j=m; j>=w[i]; j--)
{
dp[j]=max(dp[j],dp[j-w[i]]+v[i]);
}
}
printf("%d\n", dp[m]);
}
return 0;
}