提交答案题.
需要大力观察数据的特点.
测试点 1~2
$n,m$ 比较小,爆搜 + 最优化剪枝.
测试点 3
只有 $1$ 个抽屉,变成了 01 背包问题.
测试点 4~5
每个物品的体积是一样的,那么每个抽屉能容纳的物品数目是确定的,与放哪些物品无关.
建出费用流模型,从源点 $S$ 向每个物品连边,流量为 $1$ ,费用为 $0$ .
从每个物品 $i$ 向每个抽屉 $j$ 连边,流量为 $1$ ,费用为 $w_{ij}$ .
从每个抽屉向汇点 $T$ 连边,流量为它能容纳的物品数目,即 $\lfloor \frac b a\rfloor$ ,费用为 $0$ .
跑一遍最大费用最大流即可求出最优解,为了输出方案,只需在最后检查物品向抽屉连的边中,哪些边有流量.
测试点 6
每个物品的体积差别不大,通过验证发现每个抽屉能容纳的物品数目仍是确定的.
于是和上两个测试点做法相同.
测试点 7
只有第 $1$ 个物品的体积和其他物品的体积不同,枚举它放在哪个抽屉里面,对剩余的物品,像测试点 4~5 那样做.
测试点 8~10
数据没有什么特点,由于这个问题是 NPC 的,并没有什么高论.
可以尝试贪心,或者模拟退火搞一搞,得分各凭本事.