У цьому виклику ви повинні показати ASCII мистецтво на водній кулі, враховуючи кількість води, якою наповнюється повітряна куля:
| __||__ |
| / # #\ |
| |######| |
| |######| |
| |######| |
| |######| |
| |######| |
| \######/ |
| |
| |
+----------+
Як намалювати повітряну кулю
Щоб відобразити повітряну кулю розміром n, виконайте наступні кроки (зверніть увагу: коли використовується символ поділу ( /), він являє собою ціле ділення, округлення вниз):
Намалюйте контейнер, що складається з десяти вертикальних смуг (
|) зліва та справа, десяти тире (-) внизу та знака плюс (+) у нижньому лівому та нижньому правому куті. Це робить всю справу 12x11, а «всередині» 10x10.| | | | | | | | | | | | | | | | | | | | +----------+Намалюйте два вертикальних бруска (отвір повітряної кулі) по центру посередині верхнього ряду з
n/2підкресленнями (_) з обох боків (для цього прикладуnбуде 5):| __||__ | | | | | | | | | | | | | | | | | | | +----------+Намалюйте одну косу косу рису (
/) та одну зворотну косу рису (\), яка оточує цей верхній ряд, один рядок внизу:| __||__ | | / \ | | | | | | | | | | | | | | | | | +----------+Намалюйте
nрядки з однаково розташованими вертикальними смугами, а потім один ряд пари (ще однаково розташованих) нахилу та косу рису:| __||__ | | / \ | | | | | | | | | | | | | | | | | | | | | | \ / | | | | | +----------+"Наповніть" повітряну кулю водою, представленою хеш-знаком (
#). Почніть з найнижчого ряду і працюйте вгору. Якщо рядок заповнено не повністю, ви можете розмістити хеш-позначки куди завгодно (у наведеному нижче прикладі вони розміщуються випадковим чином, але ви можете поставити їх, скажімо, на лівій стороні, якщо хочете).| __||__ | | / # #\ | | |######| | | |######| | | |######| | | |######| | | |######| | | \######/ | | | | | +----------+
Максимум n- 7, а мінімальний - 0.
Вхідні дані
Вхід буде цілим числом i- це кількість хеш-знаків (води), яку необхідно намалювати.
Він ніколи не буде менше 2 або більше 100.
Вихідні дані
На виході має бути повітряна куля розміром, яка nмістить iхеш-позначки (одиниці води), де nє найменший розмір, який може вмістити iодиниці води. Оскільки iзавжди буде 2 або більше, nзавжди буде 0 або більше.
Максимально можливий розмір повітряної кулі може становити n= 7. Якщо повітряна куля розміром 7 не може відповідати вказаній кількості води, повітряна куля спливає:
| |
| |
|## # ###|
|##########|
|##########|
|##########|
|##########|
|##########|
|##########|
|##########|
+----------+
(Вищенаведене має бути результатом для введення i= 76. Так само, як і незамкнутий повітряний куля, шість додаткових одиниць води у верхньому ряду можуть бути влаштовані, як не завгодно.)
Тестові справи
Навіщо мати один тестовий випадок, коли ви можете мати їх усі ?
Ось анімований GIF усіх входів iвід 2 до 100:

Оцінка балів
Це код-гольф , тому виграє найкоротший код у байтах.