Écrivez une fonction ou un programme nommé qui accepte un seul entier N et imprime (dans STDOUT) ou renvoie (sous forme de chaîne) les N premières barres de la spirale ci-dessous, en commençant par la barre verticale au centre et en spirale dans le sens horaire vers l'extérieur.
_______________
/ _____________ \
/ / ___________ \ \
/ / / _________ \ \ \
/ / / / _______ \ \ \ \
/ / / / / _____ \ \ \ \ \
/ / / / / / ___ \ \ \ \ \ \
/ / / / / / / _ \ \ \ \ \ \ \
/ / / / / / / / \ \ \ \ \ \ \ \
| | | | | | | | | | | | | | | |
\ \ \ \ \ \ \___/ / / / / / / /
\ \ \ \ \ \_____/ / / / / / /
\ \ \ \ \_______/ / / / / /
\ \ \ \_________/ / / / /
\ \ \___________/ / / /
\ \_____________/ / /
\_______________/ /
Vous pouvez supposer que 0 <N <= 278. Votre sortie ne peut contenir aucun espace devant le caractère le plus à gauche de la spirale. Vous pouvez éventuellement imprimer une seule nouvelle ligne de fin.
Pour une entrée de 10, la sortie correcte est
_
/ \
| |
\___/
Pour une entrée de 2, la sortie correcte est
/
|
Pour une entrée de 20, la sortie correcte est
___
/ _ \
/ / \ \
| | | |
\___/ /
Une sortie qui serait incorrecte car le caractère le plus à gauche est précédé d'un espace est
___
/ _ \
/ / \ \
| | | |
\___/ /
Le gagnant est la soumission la plus courte, en octets.
|) sont simplement le caractère le plus proche qui peut représenter la réunion d'un /et \.