11
自己修正による乗算
...少なくとも「自己修正」の定義については。 タスク この課題では、あなたのタスクは、3つの文字列を記述することでA、BそしてCその次の性質を満たします。 文字列のB長さは少なくとも1です。 すべてn ≥ 0について、文字列は、選択したプログラミング言語の有効なプログラム(完全に実行可能なプログラムまたは関数の定義を意味します)です。これは、文字列のように、上付き文字は、繰り返しを表し、、、各プログラムは、一つの入力として文字列、および出力として戻って1つの文字列を取るなど。ABnCACABCABBCABBBC いずれm, n ≥ 0にせよ、プログラムが入力付きで実行される場合、それは戻ります。この形式ではない入力の場合、プログラムはクラッシュを含む何でもできます。ABmCABnCABm*n+1C 形式のいくつかの例program(input) -> output: AC(AC) -> ABC ABC(AC) -> ABC ABBBBBC(AC) -> ABC AC(ABC) -> ABC AC(ABBBBC) -> ABC ABC(ABC) -> ABBC ABBC(ABC) -> ABBBC ABBBBC(ABBBC) -> ABBBBBBBBBBBBBC ABBBC(ABBBBBBC) -> ABBBBBBBBBBBBBBBBBBBC ルールとスコアリング あなたのスコアは、との合計の長さでA、Cスコアが低いほど良くなります。Bスコアにはカウントされませんが、最初の例AとC同様に作成する必要があることに注意してください。 標準の抜け穴は許可されていません。プログラムは、直接または間接的に独自のソースコードにアクセスすることはできません(入力として与えられた場合を除く)。あなたは、文字列を識別するために必要とされているA、BとCいくつかの方法で、あなたの答えであり、あなたのソリューションを説明することを奨励しました。