T4T4

解:直接按01背包做就可以了,初始化 f[0]=0 ,其它为无穷大,注意一定要这样写:

for(int j=0;j<=m;j++){
    f[j]=min(f[j],f[max(0,j-v)]+w);
}

不要问我是怎么知道的 1753528203037.png

T5T5

解:暴搜(穿参二维数组时没加&痛失 4848 分 o(╥﹏╥)o)

T6T6

解:01背包问题,但是最后一个物品不算体积,所以我们可以先求到 m-1 ,再加上所有没选过的菜品价值的最大值即可。