Napisz pełny program lub funkcję, która przyjmuje dodatnią liczbę całkowitą N
jako dane wejściowe przez STDIN / wiersz poleceń / ARGV lub argumenty funkcji i wypisuje podwójny węzeł ASCII odpowiadający N
STDOUT.
Podwójny węzeł ASCII wygląda następująco:
__ __ __ __ __ __
/ \/ \/ \/ \/ \/ \
| /\/ /\/ /\/ /\/ /\/ /\ |
| \/ /\/ /\/ /\/ /\/ /\/ |
\ \/\ \/\ \/\ \/\ \/\ \/
/\ \/\ \/\ \/\ \/\ \/\ \
| /\/ /\/ /\/ /\/ /\/ /\ |
| \/ /\/ /\/ /\/ /\/ /\/ |
\__/\__/\__/\__/\__/\__/
Powyższe dotyczy N = 6
Oto jeszcze kilka podwójnych węzłów dla innych wartości N
:
Jeśli N = 1
wyjściowy podwójny węzeł wygląda następująco:
__
/ \
| /\ |
| \/ |
\ \/
/\ \
| /\ |
| \/ |
\__/
Bo to N = 2
jest
__ __
/ \/ \
| /\/ /\ |
| \/ /\/ |
\ \/\ \/
/\ \/\ \
| /\/ /\ |
| \/ /\/ |
\__/\__/
Bo to N = 3
jest
__ __ __
/ \/ \/ \
| /\/ /\/ /\ |
| \/ /\/ /\/ |
\ \/\ \/\ \/
/\ \/\ \/\ \
| /\/ /\/ /\ |
| \/ /\/ /\/ |
\__/\__/\__/
i podobnie, wzorzec trwa i każda większa wartość N
.
Szczegóły :
- Dane wejściowe są zawsze dodatnimi liczbami całkowitymi większymi niż
0
. - Końcowy znak nowej linii jest opcjonalny
- W każdej linii nie powinno być ani spacji końcowych, ani wystarczającej liczby spacji końcowych, aby długość każdego wiersza wynosiła
4*N + 2
. - Nigdy nie powinno być żadnej wiodącej przestrzeni, która nie jest częścią określonego wzorca.
To jest golf golfowy , więc wygrywa najkrótszy kod w bajtach.
Seria liderów
Przekształcam to w serię wyzwań artystycznych ASCII, dodając w ten sposób tabelę liderów serii (fragment autorstwa Martina). Aby mieć pewność, że Twoje odpowiedzi się pojawią, zacznij każdą odpowiedź od nagłówka, używając następującego szablonu Markdown:
# Language Name, N bytes
gdzie N jest rozmiarem Twojego zgłoszenia. Jeśli poprawisz swój wynik, możesz zachować stare wyniki w nagłówku, przekreślając je. Na przykład:
# Ruby, <s>104</s> <s>101</s> 96 bytes