大家好,又见面了,我是你们的朋友全栈君。
#include<stdio.h>
#define V 1500
int f[V];
int weight[10];
int value[10];
#define max(x,y) (x)>(y)?(x):(y)
int main()
{
int N, M;
scanf("%d %d", &N, &M);
for (int i=1; i<=N; i++)
{
scanf("%d %d", &weight[i], &value[i]);
}
for (int i=1; i<=N; i++)
for (int j=M; j>=1; j--)
{
if (weight[i] <= j)
{
f[j] = max(f[j],f[j-weight[i]] + value[i]);
}
}
printf("%d\n", f[M]);
return 0;
}
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/159106.html原文链接:https://javaforall.cn