カエルの交換2
<答え>できましたか。最小手数は15手のようです。
● |
● |
● |
× |
× |
× | ||
● |
● |
|
● | × |
× |
× | 1 |
● |
● |
× |
● |
× |
× | 2 | |
● |
● |
× |
● | × |
|
× | 3 |
● |
● |
× |
× |
● |
× | 4 | |
● |
|
× |
● | × |
● |
× | 5 |
|
● |
× |
● | × |
● |
× | 6 |
× |
● |
|
● | × |
● |
× | 7 |
× |
● |
× |
● |
● |
× | 8 | |
× |
● |
× |
● | × |
● |
9 | |
× |
● |
× |
● | × |
|
● | 10 |
× |
● |
× |
× |
● |
● | 11 | |
× |
|
× |
● | × |
● |
● | 12 |
× |
× |
|
● | × |
● |
● | 13 |
× | × | × | ● | ● | ● | 14 | |
× |
× |
× |
● |
● |
● | 15 |
では、n匹とn匹のカエルではどうなるでしょう。一般項はどのようにすれば
求められるのでしょう。
上の、3匹のカエルの場合の表を見てわかるとおり、パターンは上下対称になっている
ことに気づきますね。つまり、無駄の無い動きであれば、上から下に向かって見た変形
と、下から上に向かって見た変形が同じものになっているはずです。これを「入れ替えの
自己双対性」と呼ぶことにしましょう。つまり、上の表の2と14、3と13などは互いに双対
(反転して●と×を入れ替えると同じものになる)というわけです。
このような、対称性に着目すれば、次のような戦略でカエルを移動することができます。
まず、上表の6のような、●×が交互の状態を作る(下図参照)。
|
● |
× |
● | × |
● |
× |
これができるまでの手数を A3 とします。
次に、この図の双対パターン
× |
● |
× |
● | × |
● |
を作る。(上表では9のパターン)
6から9への手順を B3 とする。
こうなれば、後は、6ができるまでの逆順のパターンを辿ればいいわけですから
解が得られます。すると、解までの手数は、 A3 手ですね。
ということで、全体の手順は、A3+B3+A3 となります。
因みに、A3=1+2+3=6、B3=3 ということがすぐわかります。
そこで、n匹のカエルの場合に一般化することができます。
n匹の場合の手数は
An+Bn+An=(1+2+・・・+n)×2+n=n2+2n
これが一般式になります。