Scrivi un programma completo o una funzione che accetta un numero intero positivo N
come input tramite STDIN / riga comandi / ARGV o argomenti di funzione e stampa un doppio nodo ASCII corrispondente N
a STDOUT.
Il doppio nodo ASCII è simile al seguente:
__ __ __ __ __ __
/ \/ \/ \/ \/ \/ \
| /\/ /\/ /\/ /\/ /\/ /\ |
| \/ /\/ /\/ /\/ /\/ /\/ |
\ \/\ \/\ \/\ \/\ \/\ \/
/\ \/\ \/\ \/\ \/\ \/\ \
| /\/ /\/ /\/ /\/ /\/ /\ |
| \/ /\/ /\/ /\/ /\/ /\/ |
\__/\__/\__/\__/\__/\__/
Quanto sopra è per N = 6
Ecco qualche altro doppio nodo per altri valori di N
:
Se N = 1
, il doppio nodo di output appare come:
__
/ \
| /\ |
| \/ |
\ \/
/\ \
| /\ |
| \/ |
\__/
Per N = 2
, è
__ __
/ \/ \
| /\/ /\ |
| \/ /\/ |
\ \/\ \/
/\ \/\ \
| /\/ /\ |
| \/ /\/ |
\__/\__/
Per N = 3
, è
__ __ __
/ \/ \/ \
| /\/ /\/ /\ |
| \/ /\/ /\/ |
\ \/\ \/\ \/
/\ \/\ \/\ \
| /\/ /\/ /\ |
| \/ /\/ /\/ |
\__/\__/\__/
e allo stesso modo, il modello continua e qualsiasi valore maggiore di N
.
Dettagli :
- L'input è sempre un numero intero positivo maggiore di
0
. - Il trascinamento di newline è facoltativo
- Non ci dovrebbero essere spazi finali in ogni riga o spazi finali sufficienti in modo che la lunghezza di ogni riga sia
4*N + 2
. - Non dovrebbe mai esserci spazio iniziale che non faccia parte del modello specificato.
Questo è code-golf , quindi vince il codice più breve in byte.
Classifica serie
Sto convertendo questo in una serie di sfide artistiche ASCII e aggiungendo così una classifica per la serie (frammento di Martin). Per assicurarti che le tue risposte vengano visualizzate, inizia ogni risposta con un titolo, utilizzando il seguente modello Markdown:
# Language Name, N bytes
dove N è la dimensione del tuo invio. Se si migliora il punteggio, è possibile mantenere i vecchi punteggi nel titolo, colpendoli. Per esempio:
# Ruby, <s>104</s> <s>101</s> 96 bytes