我有套装中的物品作为下面的例子。每个项目包含特定成本。 我有最高预算。我需要以这样的方式进行组合:在每个组合中,我需要每组中至少一个项目,并且总成本应该等于我的预算。
实施例
A = [a1, a2, a3, a4, ... , a10]
B = [b1, b2, b3, b4, ... , b10]
C = [c1, c2, c3, c4, ... , c10] may be upto G
Max budget = 10
cost of a1 = 2
a2 = 8
b1 = 1
b2 = 7
c1 = 3
c2 = 1
etc
输出可以是
[a1, b2, c2] i,e 2+7+1 = 10
[a2, b1, c2] i,e 8+1+1 = 10
[a1, b1, c1] i,e 2+1+3 = 6 Eliminated (since 6 != 10)
goes on
每个中最多可以有7 sets
和10 items
。因此,最大组合为10^7
。有没有算法可以轻松实现这一目标。我遵循蛮力方法而且太贵了。
谢谢。