Le sous-ensemble Sum autorise-t-il les multisets?

9

Dans le problème de sous-ensemble, certains des nombres donnés peuvent-ils être les mêmes? Par exemple, nous pourrions avoir et l'objectif est de ? Puis-je supposer que j'ai une solution spécifique avec les numéros et et et ne l'est pas?une1,une2,une3,,unen[1,1,1,2,3,4]5231,1,12

curieuse
la source
6
Vous dites potayto, je dis potahto. Il est assez courant pour les informaticiens de brouiller la distinction formelle entre les ensembles et les multi-ensembles; la seule façon d'en être sûr est de lire attentivement la définition . Toutes les variantes du problème Subset Sum sont NP-complete.
JeffE

Réponses:

10

Une question que nous pourrions poser est "Pouvons-nous réduire cela au problème de somme de sous-ensemble?" Dans ce cas, la réponse est oui : pour chaque dupliqué, nous le remplaçons par deux nombres et tels que . zXyX+y=z

[-1,-1,2,3][-7,-1,2,3,6]

Cependant, nous devons faire attention à ne pas introduire de solutions supplémentaires (celles utilisant juste sans ), ce que nous pouvons faire en faisant pour , et pour . Plus précisément, cela empêche l'utilisation de sans (et vice versa) en rendant la somme de et de tous les nombres négatifs strictement supérieure à zéro (et ne satisfait donc pas le problème de somme de sous-ensemble traditionnel).XyX>|Σ(uneje)|uneje<0UNEy<-|Σ(uneje)|uneje>0UNEXyX

Merbs
la source