Ceci est la version ASCII de ce défi . Le poste initial a été séparé par demande par Martin Ender
introduction
Semblable à la séquence de Fibonacci, la séquence de Padovan ( OEIS A000931 ) est une séquence de nombres qui est produite en ajoutant des termes précédents dans la séquence. Les valeurs initiales sont définies comme:
P(0) = P(1) = P(2) = 1
Les 0e, 1er et 2e termes sont tous 1. La relation de récurrence est indiquée ci-dessous:
P(n) = P(n - 2) + P(n - 3)
Ainsi, il donne la séquence suivante:
1, 1, 1, 2, 2, 3, 4, 5, 7, 9, 12, 16, 21, 28, 37, 49, 65, 86, 114, 151, 200, 265, 351, ...
L'utilisation de ces nombres comme longueurs latérales de triangles équilatéraux produit une belle spirale lorsque vous les placez tous ensemble, un peu comme la spirale de Fibonacci:
Image reproduite avec l' aimable autorisation de Wikipedia
Tâche
Votre tâche consiste à écrire un programme qui recrée cette spirale par l'art ASCII, avec une entrée correspondant à quel terme. Puisqu'un triangle de longueur latérale 1 (1 caractère) est impossible à représenter correctement en ASCII, les longueurs latérales ont été dilatées d'un facteur 2. Ainsi, le triangle de longueur latérale 1 est en fait représenté comme suit:
/\
/__\
Ainsi, par exemple, si l'entrée était 5 (le 5ème terme), la sortie devrait être:
/\
/ \
/ \
/______\
\ /\
\ /__\
\ /\ /
\/__\/
Les 5 premiers termes étaient 1, 1, 1, 2, 2, donc le triangle avait des longueurs latérales 2, 2, 2, 4, 4 en raison de la dilatation. Un autre exemple pour l'entrée 8:
__________
/\ /\
/ \ / \
/ \ / \
/______\ / \
\ /\ / \
\ /__\/ \
\ /\ / \
\/__\/______________\
\ /
\ /
\ /
\ /
\ /
\ /
\ /
\ /
\ /
\/
Règles
- Vous devez imprimer le résultat et l'entrée doit être un entier correspondant au numéro du terme
- Les retours à la ligne de fin et de début sont autorisés, les espaces de fin après les lignes sont également autorisés
- Votre soumission doit être en mesure de traiter au moins jusqu'au 10e trimestre (9)
- Votre soumission doit être un programme ou une fonction complète qui accepte les données et imprime le résultat
- Les rotations de la sortie sont autorisées, par multiples de 60 degrés, mais la taille des triangles doit rester la même, ainsi que la représentation
- Aller dans le sens antihoraire est également autorisé
- Les failles standard sont interdites
Vous pouvez supposer que l'entrée sera> 0 et que le format correct de l'entrée sera donné.
Notation
Il s'agit de code-golf , donc le code le plus court en octets l'emporte. Bonne année à tous!