Зимовий розпродаж Scream ™ увімкнено, і ви просто нагадали собі напружену мінімалістичну екшн-гру Super Square . Граючи в нього, ви розумієте, що або гра просто смішно важка, або ви просто дуже погані в цьому. Зокрема, є така картина "дощу", яка, здається, отримує вас щоразу ...
Розчаровані, ви вирішили поставити собі інший виклик: намалюйте візерунок дощу в мистецтві ASCII!
Вхідні дані
Введення - це єдине додатне ціле число, що вказує розмір шаблону n
, заданий через STDIN або аргумент функції.
Вихідні дані
Вихід - це шаблон дощу у вказаному розмірі, повертається у вигляді рядка або друкується через STDOUT. Провідна або відстала пробіли до або після всього зображення добре. Крім того, зображення не повинно бути розмитим у лівій частині екрана, а має бути чітко помітним.
Ось n = 10
:
...................
| ----------------- |
| ............... |
| | ------------- | |
| | ........... | |
| | | --------- | | |
| | | ....... | | |
| | | | ----- | | | |
| | | | ... | | | |
| | | | | - | | | | |
| | | | | | | | | |
| | | | | - | | | | |
| | | | ... | | | |
| | | | ----- | | | |
| | | ....... | | |
| | | --------- | | |
| | ........... | |
| | ------------- | |
| ............... |
| ----------------- |
...................
Ось n = 5
:
---------
.......
| ----- |
| ... |
| | - | |
| | | |
| | - | |
| ... |
| ----- |
.......
---------
І, нарешті, ось n = 1
(саме дві найпотужніші стіни):
-
-
Конструкція (для додаткової ясності)
Ігрова площа ділиться на дві пари квадрантів так:
AAAAAAAAA
B AAAAAAA B
BB AAAAA BB
BBB AAA BBB
BBBB A BBBB
BBBBB BBBBB
BBBB A BBBB
BBB AAA BBB
BB AAAAA BB
B AAAAAAA B
AAAAAAAAA
Верхній / нижній квадранти повинні чергуватися між горизонтальними стінками, представленими дефісами -
, і зазорами, затіненими крапками .
. Лівий / правий квадранти повинні чергуватися між просторами та вертикальними стінками, представленими трубами
|
. Основні діагоналі порожні, і завжди повинні бути заповнені пробілами.
За розміром дощового малюнка n
є 2n
стіни, у яких стіни від верхнього / нижнього квадранту найближчі до центру, а стіни чергуються між квадрантами, коли ми віддаляємось від центру.
Оцінка балів
Це код-гольф, тому виграє код у найменших байтах.