Algorithme pour déterminer pièce de combinaisons

J'ai récemment été confronté à une invite pour un algorithme de programmation que je n'avais aucune idée de quoi faire. Je n'ai jamais vraiment écrit un algorithme avant, donc je suis un newb.

Le problème dit d'écrire un programme pour déterminer l'ensemble de la pièce possible de combinaisons pour un caissier de donner en retour que du changement fondée sur des valeurs de pièces et le nombre de pièces. Par exemple, il pourrait être une monnaie avec 4 pièces: 2 cent, 6 cent, 10 cent et 15 pièces de un cent. Combien de combinaisons de ce que l'égalité de 50 cents?

La langue que j'utilise est le C++, bien que ce n'est pas vraiment trop d'importance.

edit: C'est une programmation spécifique de la question, mais comment pourrais-je analyser une chaîne de caractères en C++ pour obtenir les valeurs de pièce? Ils ont été donnés dans un document texte comme

4 2 6 10 15 50 

(où les chiffres dans ce cas correspondent à l'exemple que j'ai donné)

Cette question a quelque chose d'utile à la recherche de réponses pour vous; stackoverflow.com/questions/1106929/...
Avez-vous besoin de connaître la pièce de combinaisons, ou tout simplement le nombre d'entre eux?

OriginalL'auteur ahota | 2011-05-05