Хэллоуин настал, и я еще не украсил свой дом, поэтому мне понадобится ваша помощь, чтобы выполнить эту задачу
Входные данные Входные
данные представляют собой список из четырехзначных чисел, где каждая цифра представляет часть оформления:
EMBU
||||
|||+-upper decoration
||+-bottom decoration
|+-mouth/nose
+-eyes
Глаза:
0 - °
1 - ¯
2 - -
3 - ^
4 -'
Рот / Нос
0 - v
1 - w
2 - o
3 - _
4 --
Нижняя отделка
0 - ничего
1 - скелет
2 - тыква
Верхняя отделка
0 - ничего
1 - летучая мышь
2 - отдыхающая летучая мышь
3 - паук
Выход
Скелет:
(EME)
_|_
/[|]\
|
/ \
тыква
,
(EME)
Летучая мышь
^"^
Отдыхая летучая мышь
()
´`
паук
|
.|.
:":
- Каждое украшение имеет ширину 5 символов
- Верхние украшения начинаются сверху
- Нижние украшения начинаются снизу
- Если паук находится над тыквой или нет украшения снизу, длина паутины будет равна 3, если она находится над скелетом, длина паутины будет равна 1
- Когда нижняя отделка
0
первых двух цифр не имеет значения - Между каждым украшением будет пустой столб
Пример
ввода
3123 ??02 1021 0310
вывода
| ()
| ´` ^"^
.|. (°_°)
:": _|_
/[|]\
, , |
(^w^) (¯v¯) / \
Завершающие пробелы в конце каждой строки являются необязательными.
Разрешающие символы новой строки в конце всего вывода разрешены
Критерии победы
Это код-гольф, поэтому выигрывает самый короткий ответ
9999
?Ответы:
JavaScript (ES6),
319315 байтисточник
Ява,
829, 798Да. Значительно улучшилось благодаря Кевину Круйссену и corvus_192.
версия без золота
Любимое украшение (которое, видимо, выглядит более злым в моей консоли): скелет терминатора
источник
char[][]c=new char[8][e.length*6];char t,u,h='|';
->char c[][]=new char[8][e.length*6],t,u,h='|';
;'-'
может быть45
;'^'
может быть 94; Пространство может быть удалено здесьif(f>48) {
:; И я уверен, что в гольф можно играть намного больше, но это слишком много, чтобы заниматься более сложным гольфом. :)Ruby 2.3.1,
777752 байтаEdit_0: я полностью пропустил некоторые переменные использования в гольф и некоторые другие вещи.
Принимает в N число переменных украшений. Конечно, с этим можно еще поиграть в гольф. Я не очень знаком со многими хитростями Руби, но вот пример! Я также счастлив, что смог решить ее.
Un-golfed
Следующее:
Выводы это:
источник
Python 2, 331 байт ""
Принимает ввод как список строк
-
пример
Входные данные:
["1212","4321","0123","1102","0020","1010","0101","2113"]
Выход:
источник