Perl 5, 54 байта / 71 печатный символ ASCII
Примечание: это вторая версия этого ответа. Для оригинальной 64-байтовой / 95-символьной версии с использованием PHP и gzinflate () см. Историю этого ответа .
Вот версия ASCII для печати из 71 символа:
y/01/ #/,say for unpack'(B40)4',unpack u,'4I*`1`(JJI!$FFNRJU52HIJ0*))H'
54-байтовая версия содержит непечатаемые символы, поэтому я предоставляю ее в виде шестнадцатеричного дампа. В системах Unixish вы можете использовать, xxd -r
чтобы превратить шестнадцатеричный дамп обратно в исполняемый скрипт Perl:
0000000: 792f 3031 2f20 232f 2c73 6179 2066 6f72 y/01/ #/,say for
0000010: 2075 6e70 6163 6b27 2842 3430 2934 272c unpack'(B40)4',
0000020: 27a4 a011 008a aaa4 1126 9aec aad5 54a8 '........&....T.
0000030: a6a4 0a24 9a27 ...$.'
Оба должны быть запущены с, perl -M5.010
чтобы включить функцию Perl 5.10+ say
. Они будут производить следующий вывод:
(Показан в виде скриншота, потому что огромная высота строки в SE делает ASCII-код уродливым и трудным для чтения. Строчная буква «е» выглядит неловко, но я считаю, что это можно считать читабельным, хотя и едва ли.)
Ps. Если вывод решения выше кажется вам слишком минималистичным, вот вариант из 92 символов, который производит вывод, аналогичный решению Томаса :
y/01/ #/,say for unpack'(B56)*',unpack u,'CH!(`"(`"":,2``B``@GGDC\'(C#(YI!)("I)"2*,),`4,03D'
Вот скриншот:
Pps. Я почти уверен, что это ( GolfScript, 51 символ ) - самое короткое решение для печати ASCII, если не считать тех, которые просто вызывают banner / FIGLet или чит-код другим способом:
'iJ@Q@HmURBIMM{JkUUJeMRAQIM'{2base(;{' #'=}/}%39/n*
Вывод такой же, как для моего решения Perl с 71 символом выше.
bash
: 33 символа - pastebin.com/HZ1w8z8g Это приемлемо?