data-structure-experiments/1/solution1.md

499 B

思路

一个能装入总体积为T的背包和n件体积分别为w1,w2,…wn的物品,能否从n件物品中挑选若干件恰好装背包,即使w1+w2+…+wm=T

相当于取一个向量 n = (x_1, x_2, ..., x_n),其中 x_i \in \{0, 1\},使得 \sum_{i=1}^n x_i w_i = T,求所有满足条件的 n

使用暴力 dfs 搜索,搜索每一件物品的选择情况,符合条件时输出。

总情况数为 2^n,时间复杂度为 O(2^n)

代码及解释