5445专题

【HDU 5445】Food Problem(DP)

题意:给你n种食物,m种车,每种食物有三种属性能量值t,体积u,数量v。每种车有三个属性值容量x,价格y,数量z。问题是在能够达到至少p能量的要求下,最小花费为多少,若大于50000则输出TAT。 分析:我们可以首先用0\1背包把在达到p能量的情况下的最小体积先搞出来,因为一个物品最大能量值<=100,故只用背到p + 100,就好了。然后再考虑在50000块以内能够得到的最大体积为多少。然后在

hdu 5445 Food Problem(多重背包)

题目链接: hdu 5445 Food Problem 解题思路 先对甜点做一次背包,容量表示能量值,对于每个能量值维护最小需要的体积,在对车做一次背包,容量表示花费,对于每个花费值维护最大可以提供的体积。多种背包的优化可以去看一下背包9讲。 代码 #include <cstdio>#include <cstring>#include <vector>#include <algori