Напишите полную программу или функцию, которая принимает положительное целое число в N
качестве входных данных через STDIN / командную строку / ARGV или аргументы функции и печатает двойной ASCII-узел, соответствующий N
значению STDOUT.
Двойной узел ASCII выглядит так:
__ __ __ __ __ __
/ \/ \/ \/ \/ \/ \
| /\/ /\/ /\/ /\/ /\/ /\ |
| \/ /\/ /\/ /\/ /\/ /\/ |
\ \/\ \/\ \/\ \/\ \/\ \/
/\ \/\ \/\ \/\ \/\ \/\ \
| /\/ /\/ /\/ /\/ /\/ /\ |
| \/ /\/ /\/ /\/ /\/ /\/ |
\__/\__/\__/\__/\__/\__/
Выше для N = 6
Вот еще несколько двойных узлов для других значений N
:
Если N = 1
выходной двойной узел выглядит так:
__
/ \
| /\ |
| \/ |
\ \/
/\ \
| /\ |
| \/ |
\__/
Ибо N = 2
его
__ __
/ \/ \
| /\/ /\ |
| \/ /\/ |
\ \/\ \/
/\ \/\ \
| /\/ /\ |
| \/ /\/ |
\__/\__/
Ибо N = 3
его
__ __ __
/ \/ \/ \
| /\/ /\/ /\ |
| \/ /\/ /\/ |
\ \/\ \/\ \/
/\ \/\ \/\ \
| /\/ /\/ /\ |
| \/ /\/ /\/ |
\__/\__/\__/
и аналогичным образом, шаблон продолжается и любое большее значение N
.
Детали :
- На входе всегда положительное целое число больше, чем
0
. - Трейлинг новой строки не является обязательным
- В каждой строке либо не должно быть завершающих пробелов, либо должно быть достаточно конечных пробелов, чтобы длина каждой строки была равна
4*N + 2
. - Никогда не должно быть начальных пробелов, которые не являются частью указанного шаблона.
Это код-гольф , поэтому выигрывает самый короткий код в байтах.
Таблица лидеров
Я превращаю это в серию художественных испытаний ASCII и тем самым добавляю таблицу лидеров для этой серии (фрагмент от Мартина). Чтобы убедиться, что ваши ответы отображаются, начните каждый ответ с заголовка, используя следующий шаблон уценки:
# Language Name, N bytes
где N - размер вашей заявки. Если вы улучшите свой счет, вы можете сохранить старые результаты в заголовке, вычеркнув их. Например:
# Ruby, <s>104</s> <s>101</s> 96 bytes