(с извинениями перед Джимом Уэстом за название и случайным образом вдохновленный текстовым представлением Cisco их логотипа: .:|:.:|:.
для концепции)
Учитывая входное целое 1 <= n <= 255
, выведите художественное представление ASCII подвесного моста расстояния, n
следуя приведенным ниже правилам построения:
- Начало и конец моста (не учитываются на
n
расстоянии) всегда-|
и|-
, таким образом, мост может надлежащим образом соединиться с шоссе рядом с ним. - Мост не простирается вниз (уровень проезжей части, состоящий из
-
ряда, является нижним рядом). - Может быть максимум две части проезжей части
--
одном ряду , для более длинного пролета требуются подвесные тросы для поддержки. - Подвесные тросы
\
простираются от проезжей части до вышек|
по прямым линиям. - Башни
|
должны быть достаточно высокими, чтобы поддерживать соседние подвесные тросы, но не выше. - Мост должен быть сбалансирован слева направо относительно средней точки, отдавая предпочтение центральным участкам, когда это возможно.
- Все вышеперечисленное должно привести к минимизации кабелей, но, чтобы было ясно, количество подвесных кабелей должно быть сведено к минимуму при одновременном соблюдении вышеуказанных правил.
Чтобы обеспечить визуальное представление, вот ожидаемые результаты для n = 1, 2, 3, ... 15
-
1
-|-|-
2
-|--|-
3
-|\-/|-
4
-|\--/|-
5
|\ /|
-|-\-/-|-
6
|\ /|
-|-\--/-|-
7
|\ /|
| \ / |
-|--\-/--|-
8
|\ /|
| \ / |
-|--\--/--|-
9
|\ /|
| \ / |
| \ / |
-|\--\-/--/|-
10
|\ /|
| \ / |
| \ / |
-|\--\--/--/|-
11
|\ /|
| \ / |
| \ / |
|\ \ / /|
-|-\--\-/--/-|-
12
|\ /|
| \ / |
| \ / |
|\ \ / /|
-|-\--\--/--/-|-
13
|\ /|
| \ / |
| \ / |
|\ \ / /|
| \ \ / / |
-|--\--\-/--/--|-
14
|\ /|
| \ / |
| \ / |
|\ \ / /|
| \ \ / / |
-|--\--\--/--/--|-
15
|\ /|
| \ / |
| \ / |
|\ \ / /|
| \ \ / / |
| \ \ / / |
-|\--\--\-/--/--/|-
вход
Один положительное целое число в любом удобном формате , n > 9
.
Выход
Мост ASCII-art, следуя приведенной выше методике строительства.
правила
- Начальные или завершающие символы новой строки или пробелы являются необязательными, если символы моста сами выстраиваются правильно.
- Либо полная программа или функция приемлемы. Если функция, вы можете вернуть вывод, а не распечатать его.
- Если возможно, пожалуйста, включите ссылку на среду онлайн-тестирования, чтобы люди могли опробовать ваш код!
- Стандартные лазейки запрещены.
- Это код-гольф, поэтому применяются все обычные правила игры в гольф, и выигрывает самый короткий код (в байтах).