#include<stdio.h>
#include<stdlib.h>
int w[10001],c[10001],f[100001];
int n,m,i,v;
int main(){
//printf("输入背包容量:");
scanf("%d",&m);
//printf("输入物品数量:");
scanf("%d",&n);
for (i=1;i<=n;i++){
//printf("输入第%d个物品的重量及价值:",i);
scanf("%d%d",&w[i],&c[i]);
}
for (i=1;i<=n;i++)
for (v=w[i];v<=m;v++)
if (f[v-w[i]]+c[i]>f[v])
f[v]=f[v-w[i]]+c[i]; //贪心
//printf("最大价值为:");
printf("%d\n",f[m]);
system("pause>nul");
return 0;
}
完全背包模板
最新推荐文章于 2023-12-23 19:44:09 发布