朴素时间复杂度: O ( n m s ) O(nms) O(nms),其中 n n n为物品个数, m m m为总体积, s s s为多重个数。 二进制优化 朴素的多重背包其实就是 01 01 01背包,只不过多循坏了几次。 考虑将一个可用 s s s次的物品拆分为 1 , 2 , 4 , 8 , ⋯ , 2 k , s − 2 k − ( 2 k − 1 ) 1, 2, 4, 8 ,\cdots, 2 ^ k, s - 2 ^ k - (2 ^ k - 1) 1,2,4,8,⋯,2k,s−