So führen Sie ein reduziertes Rucksackproblem durch

Oct 25 2020

Ich habe eine Problemstellung, die eine reduzierte Version des Rucksackproblems zu sein scheint, aber ich weiß nicht, wie es in Mathematica geht.

Das Problem ist wie folgt: Wenn eine Menge S von ganzen Zahlen (z. B. {a, b, c, ...}) und eine bestimmte ganze Zahl T gegeben sind, finden Sie alle möglichen Kombinationen der Elemente von S, die genau zu T summieren. (zB gibt {a, d, e} und {e, f} zurück, weil a + d + e = T und e + f = T).

Antworten

11 ciao Oct 25 2020 at 13:18
Select[Subsets[s], Tr@# == t&]

Sollte erreichen, wonach Sie suchen.

Wenn Sie Multiset-Ergebnisse zulassen möchten,

IntegerPartitions[t, All, s]