Эта задача представляет собой вырезанную пасту из Enlarge ASCII art , но ее можно изменить , используя PetSCII на основе половинного блока символов:
string=" ▝▘▀▗▐▚▜▖▞▌▛▄▟▙█"
Таким образом, цель состоит в том, чтобы уменьшить 1/2
помощью ascii-art . Например, из строки:
OOOOOO OOOOOO OOOOOO OOOOOOO OOOOOO OOOOOO OO OOOOOOO
OO OO OO OO OO OO OO OO OO OO OO
OO OO OO OO OO OOOOO OO OOO OO OO OO OOOOO
OO OO OO OO OO OO OO OO OO OO OO OO
OOOOOO OOOOOO OOOOOO OOOOOOO OOOOOO OOOOOO OOOOOOO OO
Вы должны сделать:
▟▀▀▘▟▀▀▙▐▛▀▙▐▛▀▀ ▗▛▀▀ ▟▀▀▙▐▌ ▐▛▀▀
█ █ █▐▌ █▐▛▀ ▐▌ ▜▌█ █▐▌ ▐▛▀
▝▀▀▘▝▀▀▘▝▀▀▘▝▀▀▀ ▀▀▀ ▝▀▀▘▝▀▀▀▝▘
(или даже:
▗▛▀▀▗▛▀▜▖█▀▜▖█▀▀▘ ▟▀▀▘▗▛▀▜▖█ █▀▀▘
▐▌ ▐▌ ▐▌█ ▐▌█▀▘ █ ▝█▐▌ ▐▌█ █▀▘
▀▀▀ ▀▀▀ ▀▀▀ ▀▀▀▘ ▝▀▀▘ ▀▀▀ ▀▀▀▘▀
;-)
или где трубопровод:
wget -O - https://codegolf.stackexchange.com/q/19123/9424 |
sed -ne '/<pre><code>/,/<\/code><\/pre>/{//{/\//q};s/<pre><code>//;p}'
('l2v2l6v2'+ 'e1l1v3l2'+
'v3e1v7e1v7e1v7e1l2v6e1l4v5'+
'e1l6v4e1l8v3e1l7l3v2e1l9l3v1')
.replace(/[lve]\d/g,function
(c){return Array(-~c[1]).
join({l:' ',v:'Love'
,e:'\n'}[c[0
]])})
мог бы дать:
▗▟█████▙▟█████▄
▜█████████████▛▘
▝▀███▙▛█████▀
▝▀▜██▀▘
Некоторые образцы:
С (примерно) такими же правилами:
- Ввод из STDIN или файла
- Каждый подчиненный символ должен быть представлен, только пробелы должны оставаться пустыми .
- Это тоже код-гольф , так что выиграл самый низкий балл. Оценка рассчитывается как:
+1
по символам, для подсчета в символах, а не в байтах, т.е.:s=' ▝▘▀▗▐▚▜▖▞▌▛▄▟▙█'
считать 20 символов, а не 52 !!-10
для объяснения;+20
для использования внешнего инструмента шрифта или библиотеки.
xterm -xrm 'XTerm*renderFont:false' &
чтобы открыть окно консоли, способное отобразить это правильно.