Напишіть найкоротшу можливу програму, яка містить набір різних позитивних цілих чисел і виводить ASCII-рендерінг концентричних шестикутників з тими бічними довжинами, зроблені з косої, підкреслення, пробілів та нових рядків.
Виграє найкоротша програма в байтах, підрахована https://mothereff.in/byte-counter .
Приклади
(Вони виглядають краще з меншим інтервалом між рядками.)
Якщо введенням є 1
вихід, повинен бути шестикутник зі стороною довжиною 1:
__
/ \
\__/
Зауважте, що для верхньої та нижньої частини шестикутника використовуються дві підкреслення, тому вони краще пропорційні.
Взагалі шестикутник розміром N містить N косої кути на кожній кутовій стороні та 2 * N підкреслення на верхній та нижній частині.
Якщо введенням є 1 2
вихід, то повинні бути концентричні шестикутники зі сторонами довжини 1 та 2:
____
/ __ \
/ / \ \
\ \__/ /
\____/
Якщо вхід є, 1 3
вихід повинен бути:
______
/ \
/ __ \
/ / \ \
\ \__/ /
\ /
\______/
Якщо вхід є, 1 3 2
вихід повинен бути:
______
/ ____ \
/ / __ \ \
/ / / \ \ \
\ \ \__/ / /
\ \____/ /
\______/
тощо.
Правила вводу / виводу
Введення має надходити з командного рядка або stdin, але може бути у будь-якому зручному форматі.
Наприклад, ви могли б дати кожному номер в якості аргументу командного рядка: > myprogram 1 3 2
або ви могли б підказати користувачу ввести число в якості преформатірованного списку: [1, 3, 2]
.
Вихідні дані повинні переходити до stdout або найближчого еквівалента вашої мови.
Додаткові правила
- Вхід завжди буде набором виразних натуральних чисел, не обов'язково в будь-якому порядку .
- Вихід повинен ...
- не містять жодних символів, крім нових
/\ _
рядків. - не мають пробілів чи зайвих провідних пробілів.
- не містять сторонніх провідних нових рядків, але можуть мати один необов'язковий останній новий рядок.
- не містять жодних символів, крім нових
- Якщо нічого не вводиться, тоді нічого не виводиться (крім, можливо, одного нового рядка).
- Якщо це допомагає, ви можете припустити, що вхідні цілі числа менше 2 16 .
1
(або будь-яке число) відноситься до шестикутника зі стороною довжиною 1. (З застереженням, що 1 коса риса = 2 підкреслення.) Так 1
завжди буде посилатися на найпотужніший шестикутник.
1
стосується внутрішнього або зовнішнього шестикутника?