Étant donné une chaîne d'entrée de longueur 2
ou plus composée uniquement de caractères alphabétiques [A-Z]
ou [a-z]
(votre choix s'ils sont tous en majuscules ou tout en minuscules), sortez une chaîne continue de caractères formant un motif double losange.
La chaîne d'entrée commence sur la ligne centrale et s'étend vers le bas et la droite en diagonale jusqu'à ce que la fin de la chaîne d'entrée soit atteinte. Ensuite, le motif continue de haut en bas sur une diagonale jusqu'à ce que vous soyez aussi loin au-dessus de la ligne médiane que la longueur de la chaîne d'entrée moins 1. Continuez de bas en haut jusqu'à la ligne médiane, puis de bas en haut. gauche, puis en haut et à gauche (en allant "derrière" le caractère central), et enfin en bas et à gauche jusqu'au caractère de départ.
C'est un peu verbeux, et c'est mieux démontré par quelques exemples:
"YOU"
U Y
Y O U O
Y O U
O Y U Y
U O
^ ^
↙ ↖ ↗ ↘
↘ ↗ >
↘ ↗ ↖ ↙
V V
Voyez comment YOU
commence la ligne médiane et suit de bas en haut, puis de haut en bas, etc., jusqu'à ce qu'elle revienne au début. Notez en particulier comment la Y
partie supérieure et gauche est "derrière" la O
et donc non représentée.
Quelques exemples supplémentaires:
"HI"
I I
H H H
I I
"TEST"
E E
S T T S
T T T T
T S T
E E E E
S T T S
T T
"HELLO"
L L
O L E L
H E H O
E H O H
H L E
E L L L
L E L L
L H E O
O H
- L'entrée et la sortie peuvent être fournies par n'importe quelle méthode pratique .
- L'entrée est garantie sur au moins deux lettres (c'est-à-dire que vous ne recevrez jamais
""
en entrée). - Vous pouvez l'imprimer sur STDOUT ou le renvoyer en tant que résultat de 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.