Merci à @ComradeSparklePony pour le titre.
Ce défi devrait être très simple. On vous donne trois listes.
Le premier est une liste de prénoms, en majuscule.
Le second est une liste d'adjectifs, en minuscules.
Le troisième est une liste de noms, en minuscules.
Veuillez sélectionner au hasard un nom, un adjectif facultatif, un nom et une sortie <Name>'s <adjective> <noun>
. Cependant, chaque mot doit commencer par la même lettre. Vous pouvez supposer que tous les mots commencent par une lettre. Vous pouvez également supposer (mais notez dans votre réponse si vous le faites):
- que tous les mots sont composés uniquement de caractères alphabétiques
- qu'il y a au moins un nom pour chaque nom
- qu'il y a au moins un nom pour chaque nom
Vous ne pouvez cependant pas supposer qu'un adjectif existe pour une paire particulière de nom et de nom, car l'adjectif est facultatif et la sortie sera toujours valide.
Vous n'avez pas à sélectionner la lettre partagée de manière uniforme, bien que toutes les lettres disponibles doivent avoir une chance non nulle de se produire. Vous devez cependant vous assurer que toutes les sorties pour une lettre donnée ont autant de chances que possible de se produire dans les limites du générateur de nombres aléatoires de votre langue. Dans le cas de l'adjectif, cela équivaut à avoir une entrée supplémentaire signifiant "pas d'adjectif pour cette lettre" qui a la même chance que tous les autres adjectifs pour cette lettre.
Exemples de listes d'entrées:
Joan Neil Nicola Oswald Sherman Stephanie
new novel old original second silent
jeep noun novel output second sheep snake
Exemples de sorties pour ces entrées (chaque ligne est un exemple distinct):
Stephanie's second second
Sherman's silent snake
Oswald's original output
Nicola's novel novel
Neil's noun
Joan's jeep
Notez pas d'espace supplémentaire entre les mots dans les deux derniers exemples.
C'est le code-golf , donc le code le plus court qui ne casse aucune échappatoire standard gagne!
Dans le cas peu probable où cela aiderait, vous pouvez tout saisir en majuscules, mais vous devez toujours sortir en cas de phrase.
j
objectif, la chance deviendrait-elle 4 sur 9? Cela pourrait valoir la peine de placer des probabilités par rapport aux sorties, ou d'énumérer toutes les sorties - si je comprends bien, non seulement "toutes les sorties pour une lettre donnée ...", mais aussi toutes les sorties distinctes devraient avoir la même probabilité (étant donné des valeurs distinctes dans chaque liste).