Die Aufgabe
In dieser Herausforderung besteht Ihre Aufgabe darin, drei Programme zu schreiben, die eine Art gemeinsames quine-ähnliches System bilden. Nennen wir die Programme A
, B
und C
. Wenn eines der Programme die Quelle eines anderen Programms als Eingabe erhält, gibt es die Quelle des dritten Programms aus. Wenn zum Beispiel als Eingabe angegeben wird, A
wird ausgegeben . Wenn die Programme ihre eigene Quelle als Input gegeben sind, werden sie geben die drei Saiten , und (ohne Anführungszeichen). In allen Fällen kann eine weitere nachgestellte Zeile ausgegeben werden. Für alle anderen Eingaben können die Programme alles tun, einschließlich Absturz.B
C
"three"
"mutual"
"quines"
Beispiel
Angenommen, dass die Quellcodes A
, B
und C
sind aSdf
, ghJk
und zxcV
. Dann sollten sich die Programme wie folgt verhalten.
Source Input Output
--------------------
aSdf aSdf three
aSdf ghJk zxcV
aSdf zxcV ghJk
ghJk aSdf zxcV
ghJk ghJk mutual
ghJk zxcV aSdf
zxcV aSdf ghJk
zxcV ghJk aSdf
zxcV zxcV quines
Regeln und Wertung
Die Lösungen A
, B
und C
können entweder Funktionen oder vollständige Programme sein, aber sie müssen vollkommen unabhängig sein: kein gemeinsamer Code erlaubt ist.
Es gelten Standardlücken und Quine-Regeln , so dass die Programme in keiner Weise auf ihre eigenen Quellcodes zugreifen können.
Ihr Ergebnis ist die kombinierte Bytezahl A
, B
und C
niedrigere Punktzahl besser zu sein.
public static void main
irgendwo einen Teil haben.) Oder nur, dass Sie keine Funktion schreiben können, die von allen drei aufgerufen wird?