Code-Golf Сборочная Линия

9

Примечание. Эта задача не имеет ничего общего с реальным языком ассемблера.


Как глава Code-Golf Factory Inc. , вы должны создать сборочную линию для генерации определенного фрагмента кода. Сегодня бригадир попросил вас производить киви.

Спецификация:

В этой задаче цель состоит в том, чтобы написать квинну так, чтобы ее подраздел был также квинной.

Это код-гольф, поэтому выигрывает наименьшее количество байтов (основной программы). Стандартные лазейки запрещены, и основная программа, и подраздел должны быть настоящими квинусами.

Подраздел должен быть как минимум на 2 символа короче основной программы, а это означает, что минимальная оценка составляет 3 байта.

Вам нужен только 1 подраздел на ваш выбор для работы.

Джулиан Лахниет
источник
Должно ли это работать для всех возможных подразделов кода?
Тайлер
@JulianLachniet Я думаю, что часть, которая нуждается в разъяснении, является «подразделом ваших предпочтений ».
Эрик Outgolfer
9
Я должен сказать, что всякий раз, когда я вижу вопрос о Куайне, моя голова немедленно замыкается.
Даниэль

Ответы:

4

Желе , 5 байт

”ṘṘ10

Попробуйте онлайн!

Подраздел ”ṘṘтакже является Quine. Попробуйте онлайн!

Эрик Аутгольфер
источник
Основная программа не настоящая Quine.
Утренняя монахиня
1
@LeakyNun Ну, ”ṘṘэто истинный квин, и определение истинного квин - то, что часть вашего кода идентифицирует другую часть , в этом случае ”Ṙидентифицирует другую . Я не думаю, что добавленное 10заставляет больше ”Ṙне идентифицировать другого .
Эрик Outgolfer
2

Алиса , 13 байт

"!&d<@o&dh.##

Попробуйте онлайн!

Это также Quine:

"!&d<@o&dh.

Попробуйте онлайн!

Это изменяет стандартную квинну путем очистки стека до того, как соответствующая строка будет передана, и с помощью высоты стека, чтобы определить, сколько байтов нужно вывести. Это позволяет любой неоперации быть добавлены в конце.

Nitrodon
источник
0

Python 2, 60 байт

Это действительно простой ответ, поэтому, возможно, более короткий. Это просто стандартный Python quine дважды. Завершающий перевод новой строки обязателен.

_='_=%r;print _%%_';print _%_
_='_=%r;print _%%_';print _%_

Попробуйте онлайн

mbomb007
источник
0

Деление , 35 байт

O abcdefghijklmnopqrstuvwxyz '#_OR"

Попробуйте онлайн!

Атом начинает Rдвижение прямо. В "переключает режим печати, поэтому она обтекает и печатает все , пока не встретится "снова. Это останавливает печать и устанавливает массу атома равным количеству напечатанных символов (34). Он снова оборачивается, Oуничтожает атом и печатает символ ASCII, представленный его массой, которая есть ".

Это содержит простую квиншу деления,

'#_OR"

Попробуйте онлайн!

Здесь '#задает для массы атома значение ASCII #(35) и _уменьшает его так, что Oвыводится кавычка.

Деление , 8 байт

'#_O  R"

Поскольку приведенная выше простая формула начинается Rи заканчивается в O, можно легко создать любую длину квин, добавив символы между ними.

KSmarts
источник