Давайте использовать дополненную реальность для охоты на маленьких существ, спрятанных в исходном коде. Напишите программу quine, которая выводит собственный источник кода, за исключением 5 последовательных символов, которые будут изменены и которые будут отображать PCG-mon :(^_^)
Пять последовательных символов могут быть расположены в любом месте исходного кода (от позиции 0
до n-5
, n
являющейся длиной исходного кода). Исходный код должен иметь минимальную длину 5 символов. Строка (^_^)
или любая ее подстрока длиной> = 2 не должна появляться в исходном исходном коде, только в выходных данных.
Пример правильного представления:
- исходный код
my source code
, выводmy (^_^)e code
Инвалид:
- исходный код
(^_^) copy;
, вывод(^_^) (^_^)
Критерии победы
Самый короткий код в байтах побеждает.
(^_^)
с исходным кодом, содержащим менее 5 символов? может быть, с определенной кодировкой ...G
производит выводabcdefghijklmnopqrstuvwxyz
.Ответы:
Javascript ES6, 44 байта
Выход:
Все еще работает над игрой в гольф, но пока работает.
источник
=_=
$=_=>`(\^\_\^\)${($+'').slice(3)};$()`;$()
(на самом деле это выглядит даже лучше, потому что теперь похоже, что ты просыпаешься спящим лицом). :)Vim,
33, 27 нажатий клавишОбратите внимание, что
<C-v>
означает ctrl + v, и является байтом,0x16
и<esc>
является escape-символом, и является байтом0x1B
.Это просто использует слегка модифицированную версию моего Гольфа, который вам очень нравится! ответ.
Выходы:
Это действительно так, поскольку
^V
vim представляет<C-v>
и^[
представляет vim<esc>
.Основная идея состоит в том, чтобы просто вводить текст с
(^_^)
помощью его кодовых точек, чтобы мы могли избежать помещения этих символов в исходный код. В режиме вставки<C-v>number
будет вставлен символ ASCII «число». Тем не менее, так как задача говорит:Это ответ на злоупотребления «подстроки» правило только ввод кодовых из
^
символов, и ввод(
,_
и)
непосредственно.Вот рисунок, который позволяет вам увидеть это решение в действии и поместить для сравнения исходный код и вывод:
источник
^
контрольный символ ... +1CJam ,
1311 байтОнлайн переводчик (-2 байта благодаря @MartinEnder) .
источник
Питон,
115111107 байтПозвоните
f()
и выход:Отчасти вдохновлен этим ответом на аналогичный вопрос .
источник
CJAM,
1615 байтПопробуй это здесь .
источник
Go (golang), 131 байт
Этот вызов должен иметь ответ в Go!
Попробуйте онлайн!
источник
JavaScript (ES6), 91 байт
Там уже есть ответ JavaScript, но нет ответа JS без чтения источника:
Это основано на моем неискушенном ответе на Golf, который вам очень понравился! , Выходы
Это можно легко изменить, перемещаясь вокруг второй
%s
строки. Например,выходы
источник
Желе , 22 байта
Доступно в TryItOnline
Использует встроенную полезную нагрузку quine.
“ØV”ṘV
В
abc
конце просто заменяемый заполнительb³
преобразует целое число в основание 100, что приводит к[40,94,95,94,41]
Ọ
приведению к символам, в(^_^)
результате чего получается весь результат.
“4094959441b³ỌØV”(^_^)
источник
C # 5.0, 715 байт
Я знаю, это огромно. Просто хотел добавить решение C #.
Выход:
Доступно на Ideone.com
источник
MATL , 14 байтов
Производит вывод
')_`_*i'(^_^)h
.Попробуйте онлайн!
объяснение
источник
Баш, 178 байт
Пффф, я не очень хорош в квинах: / Любое предложение поиграть в гольф это более чем приветствуется! :-)
источник