J'essaie de comprendre le nombre de façons possibles de combiner divers éléments de cette chaîne.Détermination du nombre de combinaisons possibles
"{Hello|Hi|Hey} {world|earth}{!|.|?}"
Lorsqu'un article (séparés par un tuyau/|) est sélectionné au hasard dans chaque groupe ({}) et combinés en une seule chaîne.
Ainsi, le « modèle » ci-dessus pourrait produire:
Hello world.
Hi earth?
Hey world.
Hi world?
Je devine que c'est un type de permutation, mais je veux vous assurer que je reçois ce droit.
Ce serait vraiment bien si cela fonctionnait avec "n" éléments imbriqués.
"{{Hello|Hi|Hey} {world|earth}|{Goodbye|farewell} {noobs|n3wbz|n00blets}}"
Je préférerais une solution basée sur les mathématiques/statistiques plutôt que sur une boucle de force brute pour obtenir la réponse si possible.
Merci!
C'est vraiment aussi simple que ça? Je n'ai pas besoin d'utiliser une sorte de permutation? (http://en.wikipedia.org/wiki/Permutation) – erikcw
@erikcw voir les mises à jour ci-dessus. – Seth
Pour effectuer les sous-choix {world | earth} | {Goodbye | adieu}, exécutez récursivement l'algorithme d'analyse pour obtenir la valeur de sous-section et continuer le traitement. –