Inspiré par ce mini-défi de chat.
Étant donné une chaîne en entrée (caractères imprimables ASCII uniquement), sortez la chaîne avec les lettres "pleut" vers le bas. Chaque lettre doit être un nombre aléatoire de lignes vers le bas (aléatoire entre 0
et la longueur de la chaîne, chacune ayant une probabilité non nulle), et un seul caractère par colonne. Toutes les sorties possibles doivent à nouveau avoir une probabilité non nulle de se produire.
C'est peut-être un peu déroutant, alors voici un exemple (tiré de ce CMC):
Hello World
d
H
o
llo
l
W
e
r
Notez comment le H
est un espace vers le bas, le d
zéro vers le bas et le llo
tout arrive à s'aligner. Le r
est le plus bas, 9
mais est toujours inférieur à la longueur de la corde à partir du haut. Ce n'est qu'un exemple, il existe des dizaines d'autres possibilités de saisie Hello World
.
D'autres exemples pourraient être:
test
t
e
s
t
PP&CG
& G
P
P C
- L'entrée et la sortie peuvent être fournies par n'importe quelle méthode pratique .
- L'entrée est garantie non vide (c'est-à-dire que vous ne recevrez jamais
""
en entrée). - Vous pouvez l’imprimer dans STDOUT ou le renvoyer comme résultat de la fonction.
- Un programme complet ou une fonction sont acceptables.
- N'importe quelle quantité d'espace blanc étranger est acceptable, tant que les caractères s'alignent de manière appropriée (par exemple, n'hésitez pas à remplir comme un rectangle).
- Les failles standard sont interdites.
- Il s'agit de code-golf, donc toutes les règles de golf habituelles s'appliquent et le code le plus court (en octets) l'emporte.