Задний план
Когда я был моложе, меня учили методу рисования странной буквы "S", который я (вместе со своими одноклассниками) нашел захватывающим. Сегодня я заново открыл для себя и, благодаря его формальному подходу к рисованию, подумал, что это может привести к интересной проблеме: P
Рисунок "S"
S можно нарисовать, выполнив следующие простые шаги:
Сначала нарисуйте 2 ряда из трех вертикальных линий примерно так:
| | |
| | |
Затем соедините верхнюю левую линию с нижней средней линией и верхнюю среднюю с нижней правой линией, чтобы получить
| | |
\ \
| | |
Наконец, нарисуйте верх и низ на текущем нарисованном изображении, чтобы оно выглядело как
^
/ \
| | |
\ \
| | |
\ /
v
Как вы можете видеть, это приводит к форме "S". Однако при расширении (рисуя его более чем на 2 строки) получается очень интересный шаблон. Ваша задача воспроизвести этот интересный образец.
задача
Учитывая целое число где n >= 2
, выведите S со n
строками, которые будут из него сделаны. Выходные данные могут быть возвращены из функции, а входные данные могут быть получены стандартными методами. Конечный / ведущий пробел как для общего изображения, так и для каждой строки, в порядке. Тем не менее, пробелы в начале строки должны быть согласованы, чтобы "не прерывался. Вы можете вывести в виде списка строк.
Контрольные примеры
input
output
---
2
^
/ \
| | |
\ \
| | |
\ /
v
---
8
^
/ \
| | |
\ \
| | |
\ \
| | |
\ \
| | |
\ \
| | |
\ \
| | |
\ \
| | |
\ \
| | |
\ /
v
---
10
^
/ \
| | |
\ \
| | |
\ \
| | |
\ \
| | |
\ \
| | |
\ \
| | |
\ \
| | |
\ \
| | |
\ \
| | |
\ \
| | |
\ /
v
Это код-гольф, поэтому выигрывает самый короткий код! Удачи,
S
в Прохладный S и вызывает бесконечную версию апS Chain