Une autre variante de PARTITION


13

J'ai une réduction du problème de partition suivant à un certain problème de planification:

Entrée: Une liste une1⩽⋯⩽unen d'entiers positifs dans l'ordre non décroissant.

Question: Existe-t-il un vecteur (X1,…,Xn)∈{-1,1}n tel que

∑je=1nunejeXje=0et
∑je=1kunejeXje⩾0pour tous k∈{1,…,n}

Sans la deuxième condition, c'est juste PARTITION, donc NP-hard. Mais la deuxième condition semble fournir beaucoup d'informations supplémentaires. Je me demande s'il existe un moyen efficace de décider de cette variante. Ou est-ce toujours difficile?

Réponses:


15

Voici une réduction de PARTITION à ce problème. Soit (une1,…,unen) une instance de PARTITION. Supposons que une1≤une2≤⋯≤unen .

Soit un «très grand nombre», par exemple . Considérez l'instance de notre problème.N = ( ∑ n i = 1 | a i | ) + 1 N , … , N ⏟ 5 n  fois , N + a 1 , … , N + a n , 4 N , … , 4 N ⏟ n  foisNN=(∑je=1n|uneje|)+1

N,…,N⏟5n fois,N+une1,…,N+unen,4N,…,4N⏟n fois
  1. S'il existe une solution à PARTITION alors est une solution à notre problème.1 , … , 1 ⏟ 4 n  fois , - x 1 , … , - x n , x 1 , … , x n , - 1 , … , - 1 ⏟ n  foisX1,…,Xn

    1,…,1⏟4n fois,-X1,…,-Xn,X1,…,Xn,-1,…,-1⏟n fois
  2. S'il existe une solution à l'instance de notre problème (à laquelle nous avons réduit une instance de PARTITION), alors . Ainsi Autrement dit, est une solution à PARTITION.(X1,…,X5n,y1,…,yn,z1,…,zn)∑je=1nunejeyje≡0(modN)

    ∑je=1nunejeyje=0.
    (y1,…,yn)

Merci Yury. Dans mon application, il est essentiel que la liste des entrées soit ordonnée de manière non décroissante, et que l'entrée ne l'est pas. Je vais modifier la question pour rendre la commande plus explicite. (N,une1,…,unen,N)
— Thomas Kalinowski

@thomas: Je ne l'ai pas remarqué. Maintenant, j'ai mis à jour ma solution.
— Yury
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.