hdu 0-1背包

时间:2023-01-01 17:01:47

题目地址http://acm.hdu.edu.cn/showproblem.php?pid=2602

#include <stdio.h>
#include <string.h>
int main()
{
int cost[],f[],va[];
int i,j,k,n,m;
scanf("%d",&k);
while(k--)
{
memset(f,,sizeof(f));
scanf("%d%d",&n,&m);
for(i=;i<n;i++)
scanf("%d",&va[i]);
for(i=;i<n;i++)
scanf("%d",&cost[i]);
for(i=;i<n;i++)
{ for(j=m;j>=cost[i];j--)
{ //经典部分
f[j]=f[j]>f[j-cost[i]]+va[i]?f[j]:f[j-cost[i]]+va[i];//放于不放比较
}
}
printf("%d\n",f[m]);
}
return ;
}

动态规划之0-1背包经典题加上这个图以便理解

hdu 0-1背包