2010-12-04 14 views

Répondre

1

Ceci est très similaire au sous-ensemble des sommes que je récemment répondais ici: Subset Sum algorithm

Le seul que vous tweak besoin de faire est de garder une trace dont la carte a été utilisée pour obtenir possible[i] à possible[i+n]. Vous pouvez garder une trace de ceux-ci en utilisant un second tableau, appelons-le card_used, puis définissez card_used[i+n] à une référence/index de la carte utilisée pour obtenir de i à i+n. Puis à la fin, vous pouvez récupérer la liste des cartes utilisées pour arriver à la somme de 15 (en supposant que est vrai) en faisant marche arrière à travers la liste card_used.

0

1) obtenir la main
boucle 2) à travers la main
2a) chaque itération, ajoutez la valeur de la voiture à un total en cours d'exécution. 2b) si jamais vous arrivez à plus de 15, vous pouvez quitter cette itération