题目大意:
有 n 种物品,每种物品都有无限多件,第 i 种物品的体积是 ai ,价值是 bi ,有一个容量为 m 的背包,求能获得的最大价值
n≤106,m≤1016,ai,bi≤100
所有数据均为正整数
题解:
ai 相同的物品保留 bi 最大的,显然操作后物品种类数 n′≤100
假设第 k 种物品的性价比(价值/体积)最高
第 k 种物品选择 (m/ak)−100 个,剩下的空间做完全背包
第 k 种物品选择 (m/ak)−100 个
怎么证明这么做是正确的
可能是弱智问题,勿喷 >_<