我有Subset-Sum problem的变体,其中子集的大小为k
,所有整数都为正(非零)。
从网上可以看出,在伪多项式时间内使用动态规划可以很好地解决这个问题。
我需要确定此问题是NPC
还是P
(假设P!=NP
)。
我试图减少子集和问题,但是所有整数必须大于零的约束都有问题。否则我会用k
零整数填充输入。
问题的正式定义:
L={<S1,S2,...,Sn,T,k>|There exists a subset I of S1,...,Sn of size m which sums up to T}
答案 0 :(得分:2)
问题在于NPC。
如果你能找到问题的多项式时间解决方案那么你就可以得到具有上界的子集和问题的多项式时间解决方案 子集Sum的时间= k *(您的问题的时间)
答案 1 :(得分:2)
那个问题是NPC。事实上,当k在n 1 - Ω(1)时,甚至是
的组合所有数字都在n O(k)中
与
有promise
无限次地将其放入coN T IME(n ^(o(k)))/ 2o(k*n*log(n)),
因为this paper's Proof of Theorem 5.1减少了
适用于此类k并保留解决方案的数量。