PARTITION의 또 다른 변형


13

특정 파티션 문제로 다음과 같은 파티션 문제가 줄었습니다.

입력 : 양의 정수 목록 감소하지 않는 순서).a1an

질문 : 합니까는 벡터가 존재 (x1,,xn){1,1}n 그러한

i=1naixi=0and
i=1kaixi0for all k{1,,n}

두 번째 조건이 없으면 단지 PARTITION이므로 NP-hard입니다. 그러나 두 번째 조건은 많은 추가 정보를 제공하는 것으로 보입니다. 이 변형을 결정하는 효율적인 방법이 있는지 궁금합니다. 아니면 여전히 어려운가요?

답변:


15

PARTITION에서이 문제로 축소되었습니다. 하자 (a1,,an) 파티션의 인스턴스. a_1 \ leq a_2 \ leq \ dots \ leq a_n 이라고 가정하십시오 a1a2an.

하자 는 "매우 많은", 예를 들어 수 . 인스턴스 고려 문제입니다.NN=(i=1n|ai|)+1

N,,N5n times,N+a1,,N+an,4N,,4Nn times
  1. to PARTITION 솔루션이 있으면 는 우리의 문제에 대한 해결책입니다.x1,,xn

    1,,14n times,x1,,xn,x1,,xn,1,,1n times
  2. 문제의 인스턴스에 대한 해결책 이있는 경우 (PARTITION의 인스턴스를 줄인) . 따라서 즉, 은 PARTITION의 솔루션입니다.(x1,,x5n,y1,,yn,z1,,zn)i=1naiyi0(modN)

    i=1naiyi=0.
    (y1,,yn)

고마워요 내 응용 프로그램에서는 입력 목록을 줄이지 않고 정렬해야하며 축소의 입력 은 중요 하지 않습니다. 주문 요구 사항을보다 명확하게하기 위해 질문을 수정하겠습니다. (N,a1,,an,N)
Thomas Kalinowski

@ 토마스 : 나는 그것을 알아 차리지 못했습니다. 이제 솔루션을 업데이트했습니다.
Yury
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.