Étant donné un ensemble de n entiers, liste tous les sous-ensembles possibles avec la somme & gt; = k

Donné un non triés ensemble des entiers sous forme de tableau, de trouver tous les sous-ensembles possibles dont la somme est supérieure ou égale à un const integer k,
par exemple:- Notre ensemble {1,2,3} et k=2

Les sous-ensembles possibles:-

 {2},
 {3},
 {1,2},
 {1,3},
 {2,3}, 
 {1,2,3}

Je ne peux que penser d'un algorithme naïf qui répertorie tous les sous-ensembles de vérifier si la somme de sous-ensemble est >=k ou pas, mais ses un algorithme exponentiel et la liste de tous les sous-ensembles nécessite O(2^N). Puis-je utiliser la programmation dynamique pour résoudre en temps polynomial?

source d'informationauteur Hidetoshi