(在你回覆其他SO問題的鏈接或將其作爲副本關閉之前,請仔細閱讀該問題。這與此問題的標準變體不同,並且我搜索了很長時間所以我敢肯定沒有這樣這裏的問題)有特殊情況的子集合
我需要找到如果最小的小號是X的一些子集的總和[I]是> = T(一些目標值,小於全集的總和)。
該集合不是很大(約40個元素),但對於指數回溯解決方案仍然太大。
的數和金額是巨大的(約10^15),因此動態規劃是不行的(可能狀態的數量很大,因此記憶化表將很快耗盡內存)。
由於相同的原因,Pisinger的線性時間算法將不起作用(它是O(nr),其中r是和的上限,在這種情況下這太大)。
是否有一些確定性算法,可以幫助我在這種情況下的大數目,但數量很少?我不想訴諸某種近似算法。