2016-06-10 14 views
1

나는 Subset-Sum problem의 변형을 가지고 있는데, 부분 집합의 크기는 k이고 모든 정수는 양수 (0이 아님)입니다.부분 집합의 크기가 'k'인 부분 합계는 NPC입니까?

온라인에서 볼 수 있듯이이 질문은 의사 다항식 시간의 동적 프로그래밍을 사용하여 상당히 해결할 수 있습니다.

나는이 문제가 NPC이거나 P (P!=NP이라고 가정)이라고 결정해야합니다.

나는 부분 집합 합계 문제를 줄이려고했지만 모든 정수가 0보다 커야한다는 제약 조건에 문제가있었습니다. 그렇지 않다면 입력을 k 0으로 채 웠을 것입니다. 문제의

공식적인 정의는 :

L={<S1,S2,...,Sn,T,k>|There exists a subset I of S1,...,Sn of size m which sums up to T}

+0

[cstheory] (http://cstheory.stackexchange.com/)에 도움이 될 수 있습니다. –

+0

@Damien_The_Unbeliever : cstheory에서 폐쇄 될 것입니다. –

답변

2

문제는 NPC입니다.

당신이 다음 부분 합계 = 케이 *의 상한 시간 (문제의 시간)

+0

귀하의 초기 문장은 정확하지만 귀하의 주장은 NPC의 회원 자격이 아니라 [disjunctive] (https://en.wikipedia.org/wiki/Logical_disjunction) 축소에 따른 경도만을 보여줍니다. –

2

그 문제는 NPC 인과 합계 문제를 하위 집합으로 다항식 시간이 솔루션을 가질 수 문제에 대한 다항식 시간의 해결 방법을 찾을 수 있다면. K가 N 인 경우 실제로 1- (1), O (K)

숫자 모두 N 에있는 심지어 조합 at most one solution

promise 거기 Ω 것을

는 (N^(o (K)))/2o(k*n*log(n)) 무한히 종종
보낸 this paper's Proof of Theorem 5.1 T IMEcoN에 넣어 의심되지 그러한 k에 대해 작용하고 솔루션 수를 유지하는 감소
을 제공합니다.