Eine andere Variante von PARTITION

13

Ich habe eine Reduzierung des folgenden Partitionsproblems auf ein bestimmtes Planungsproblem:

Eingabe: Eine Liste positiver Ganzzahlen in nicht absteigender Reihenfolge.a1an

Frage: Gibt es einen Vektor so dass(x1,,xn){1,1}n

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

Ohne die zweite Bedingung ist es nur PARTITION, daher NP-hart. Die zweite Bedingung scheint jedoch viele zusätzliche Informationen zu liefern. Ich frage mich, ob es eine effiziente Möglichkeit gibt, diese Variante zu entscheiden. Oder ist es immer noch schwer?

Thomas Kalinowski
quelle

Antworten:

15

Hier ist eine Reduktion von PARTITION auf dieses Problem. Sei (a1,,an) eine Instanz von PARTITION. Angenommen, a1a2an .

Sei N eine "sehr große Zahl", zB N=(i=1n|ai|)+1 . Betrachten Sie die Instanz

N,,N5n times,N+a1,,N+an,4N,,4Nn times
von unserem problem.
  1. Gibt es eine Lösung x1,,xn für PARTITION, dann

    1,,14n times,x1,,xn,x1,,xn,1,,1n times
    ist eine Lösung für unser Problem.
  2. Wenn es eine Lösung (x1,,x5n,y1,,yn,z1,,zn) für die Instanz unseres Problems gibt (auf die wir eine Instanz von PARTITION reduziert haben), dann i=1naiyi0(modN) . Also ist

    i=1naiyi=0.
    Das heißt, (y1,,yn) ist eine Lösung für PARTITION.
Yury
quelle
Vielen Dank, Yury. In meiner Anwendung ist es wichtig, dass die Eingabeliste nicht absteigend geordnet ist und die Eingabe in Ihrer Reduktion nicht. Ich werde die Frage ändern, um die Bestellanforderung deutlicher zu machen. (N,a1,,an,N)
Thomas Kalinowski
@thomas: Das habe ich nicht bemerkt. Jetzt habe ich meine Lösung aktualisiert.
Yury