空自を空目に空目

今日の朝刊を見て、空自を空目に空目する人が後を絶たない。

すると、彼らの「空自を空目に空目」というつぶやきを見て「空自を空目に空目を空目を空自に空目に空目」する人が出てきて、さらに「空自を空目に空目を空目を空自に空目に空目を空目を空自に空目を空自を空目に空目に空目に空目」する人まで現れる始末。と、ここまでは手で書いたが、さすがにこれ以上続けるのはアホらしい。

ということで、プログラムを書いてみることに。

for $i (1..5) {
    print sorame("空自", "空目", $i);
}
sub sorame() {
    my($a, $b, $c) = @_;
    if (--$c > 0) {
        ($a, $b) = (sorame($a, $b, $c), sorame($b, $a, $c));
    }
    "$a$bに空目";
}

結果は:

空自を空目に空目

空自を空目に空目を空目を空自に空目に空目

空自を空目に空目を空目を空自に空目に空目を空目を空自に空目を空自を空目に空目に空目に空目

空自を空目に空目を空目を空自に空目に空目を空目を空自に空目を空自を空目に空目に空目に空目を空目を空自に空目を空自を空目に空目に空目を空自を空目に空目を空目を空自に空目に空目に空目に空目

空自を空目に空目を空目を空自に空目に空目を空目を空自に空目を空自を空目に空目に空目に空目を空目を空自に空目を空自を空目に空目に空目を空自を空目に空目を空目を空自に空目に空目に空目に空目を空目を空自に空目を空自を空目に空目に空目を空自を空目に空目を空目を空自に空目に空目に空目を空自を空目に空目を空目を空自に空目に空目を空目を空自に空目を空自を空目に空目に空目に空目に空目に空目

わかりやすい例だとこう:

ヒロスエをスエヒロに空目をスエヒロをヒロスエに空目に空目をスエヒロをヒロスエに空目をヒロスエをスエヒロに空目に空目に空目をスエヒロをヒロスエに空目をヒロスエをスエヒロに空目に空目をヒロスエをスエヒロに空目をスエヒロをヒロスエに空目に空目に空目に空目をスエヒロをヒロスエに空目をヒロスエをスエヒロに空目に空目をヒロスエをスエヒロに空目をスエヒロをヒロスエに空目に空目に空目をヒロスエをスエヒロに空目をスエヒロをヒロスエに空目に空目をスエヒロをヒロスエに空目をヒロスエをスエヒロに空目に空目に空目に空目に空目

わかりやすくないか :-)。

同じ長さのパターンは他にもあるはずだが、そこまでやるほど暇じゃない。