Related: Interquine
プログラムAは実行時にプログラムBのコードを出力し、BはCのソースを出力し、CはAのソースを出力します。
今回は2人のキャラクターを交換できず、もう一度交換することはできません:)
要件:
- すべてのプログラムで1つの言語のみ
- 標準的な抜け穴の制限が適用されます
- すべてのプログラムが異なります。自分自身を出力する1つのプログラムは適格ではありません。お互いに出力している2つは、適格ではありません。
- すべてのプログラムが空でないか、少なくとも1バイトの長さです。
- stdinは
/dev/null
に接続されているため、読み込むことはできません(このルールを悪用することができますできます)。出力は標準出力に送られます。 - ランダムな結果を生成する関数を使用しないでください。
追加:
- 可能であれば説明をする
スコアは最短の長さです(短いプログラムから長いプログラムを作成できますか?)。すべてのプログラムの長さを書き、最小の番号を強調表示してください。末尾改行はカウントされません。
最低得点
ベストアンサー
Python
3, 50 bytes
s='s=%r;print(s%%(s,%i*2%%7))';print(s%(s,1*2%7))
最後の式は 1 * 2%7
から 2 * 2%7
から 4 *
* 2%7 。
2%7