『カメレオン』

『カメレオン』解答


◆静岡県 ヨッシーさんからの解答。

【問題2】

ある状態(a,b,c)が1回の出会いで(a1,b1,c1)になるとする。

  1. aとbが出会うと、b1=b−1、c1=c+2。
    よって、b1−c1=b−c−3。

  2. bとcが出会うと、b1=b−1、c1=c−1。
    よって、b1−c1=b−c。

  3. cとaが出会うと、b1=b+2、c1=c−1。
    よって、b1−c1=b−c+3。

よって、b−c≡b1−c1(mod 3)

このあと、(a2,b2,c2)、(a3,b3,c3)・・・と変化しても、
b−c≡b1−c1≡b2−c2≡b3−c3≡・・・・ (mod 3)
が成り立つ。

よって、出会いを何度か繰り返したのちの(a’,b’,c’)についても、
b−c≡b’−c’(mod 3)

例えば、b=c=0とすると、たとえa>0であっても、
状態(a,b,c)=(a,0,0)は違う色が出会わないので、変化しない。
よって、(a,b,c)≠(a’,b’,c’)に反する。

c=a=0,a=b=0の場合も同様である。
よって、ab+bc+ca≠0が成り立つ。

【問題1】

黄色、灰色、青色のカメレオンがそれぞれa匹、b匹、c匹いる状態を
(a,b,c)として表します。

全てのカメレオンが同じ色になるのは、どれかの色のカメレオンが45匹で、他の2色のカメレオンが0匹の状態である。

このとき、a−b≡b−c≡c−a≡0 (mod 3) である。

一方、
15−13≡17−15≡2 (mod 3)
17−13≡1 (mod 3)
であるので、状態(13,15,17)が
状態(45,0,0),(0,45,0),(0,0,45)のいずれかになることはない。


【コメント】

 大変わかりやすい証明ですね。
問題1の方は完璧です。
問題2は必要条件であることは、これでOKですね。
十分条件であることを証明してください。

(例えばa+b+c=PとしてPに関する帰納法が利用できます。)


◆広島県 清川 育男さんからの解答。

【問題1】

答え ありえない。

2進法の問題に還元された「三山くずし」を連想しました。
今回の問題は3で割ったときの剰余の問題に還元されます。
共通していることは、「同数の法則」でしょうか。

(13,15,17)はどのような遭遇があっても、少なくとも2種類のカメレオンを同数にすることが出来ません。
遭遇するとそれぞれはマイナス1で遭遇していないものはプラス2で出入りは3となります。
初期状態のそれぞれの差が2または4あるので、不可能であることがわかります。

(13,15,17)>>>(1,0,2)。
13+15+17=45。

1種類に出来る場合。
3で割ったときの剰余で考える。

  1. (0,0,0)
     例えば (15,15,15)、(3,15,27)

  2. (0,1,1)

  3. (1,0,1)

  4. (1,1,0)

  5. (0,2,2)

  6. (2,0,2)

  7. (2,2,0)

  8. (1,0,0)

  9. (0,1,0)

  10. (0,0,1)

  11. (1,1,1)
     例えば (1,1,43) (4,7,34)

  12. (1,2,2)

  13. (2,1,2)

  14. (2,2,1)

  15. (2,0,0)

  16. (0,2,0)

  17. (0,0,2)

  18. (2,1,1)

  19. (1,2,1)

  20. (1,1,2)

  21. (2,2,2)
     例えば (5,5,35) (5,8,32)

以上の場合はどの1種類にもなりうる。
順序を無視すれば基本的には9通り。
45が3の倍数なので、
(0,0,0)、(1,1,1)、(2,2,2)のパターンしかありません。

2進法、3進法の問題はよくありますが、4進法に還元されるおもしろい問題はないのでしょうか。


◆山梨県 Footmark さんからの解答。

【問題1】

(総数が45とは限らない)一般形で示します。

すべてのカメレオンが1種類になれるための必要十分条件は次の通り。

(1) a+b+c≧1

かつ

(2)
 [ a mod 3 = b mod 3 ] または [ b mod 3 = c mod 3 ] または [ c mod 3 = a mod 3 ]
つまり、a,b,c のそれぞれを3で割った余りが3つとも異なれば不可能で、それ以外は可能。
(ただし、a,b,c は初期状態での3種類のカメレオンのそれぞれの数)

問題の初期状態(13,15,17)では、3で割った余りはそれぞれ(1,0,2)とすべて異なるので不可能。

【必要十分条件の証明】

初期状態が(0,0,0)なら不可能なのは明らか。
よって、条件(1)を満たさねばならない。

ここで、m,nは正整数、kは非負整数であるものとする。
初期状態が(m,0,0)または(0,m,0)または(0,0,m)ならば既に条件を満たしている。

また、初期状態が(k,m,m)または(m,k,m)または(m,m,k)ならば、同数の2種類同士がm回出会えば可能。
  ・・・(仮必要条件)

そこで、すべてのカメレオンがある1種類になったものとする。
すると、その直前の状態では出会いの定義より、必ずその種類とは別な1匹ずつの2種類が存在する。
そこで、直前の状態に戻し1匹ずついる2種類を取り除いてみる。
やはり、その直前の状態では出会いの定義より、必ずその種類とは別な1匹ずつの2種類が存在する。
このように可能な限り手前の状態に戻すと、結局その種類とは別な2種類はm匹ずつになる。
それ故、逆にどの2種類も同数になれないなら、すべてのカメレオンを1種類にはできない。
  ・・・(仮十分条件)

ここで、同数になれる2種類の初期状態の数を考えてみる。
初期状態で同数なら、前述したように可能なのは明白で、その差は0となる。

そうでなければ、それらとは別な種類と多い方の種類が何回(≧1)か出会い、多い方を減らし少ない方を増やす必要がある。

出会いの定義より、多い方のカメレオンの増分を −n とすると
少ない方のカメレオンの増分は +2n である。

そこで、上のような出会いが何回かあり、多い方と少ない方のカメレオンがm匹ずつになったものとする。

すると、上のような出会いが何回かある前の2種類のカメレオンの数は
(m+n,m−2n)の筈であり、その差は3nとなる。

これらの2つのケースを一緒にすると、その差は3kとなる。

2種類の差が3で割り切れるなら、その2種類の数を3で割ったそれぞれの余りは等しく条件(2)を満たす。
  ・・・(必要条件)

逆に条件(2)を満たさないなら、どの2種類の差も3で割り切れず結局どの2種類も同数になれないので不可能。
  ・・・(十分条件)

証明は終わり。

【問題2】

移行のための最少置換を示すのに都合がよいので、便宜上、
(a'−a),(b'−b),(c'−c)を大きい順に(p'−p),(q'−q),(r'−r)と置き換えるものとする。
(ただし、p'−p≧q'−q≧r'−r)

また、その時のそれぞれのカメレオンをP,Q,Rとする。

さらに、

[出会いP]:1匹のQと1匹のRが出会い2匹のPに変化する出会い。
[出会いQ]:1匹のRと1匹のPが出会い2匹のQに変化する出会い。
[出会いR]:1匹のPと1匹のQが出会い2匹のRに変化する出会い。

置換[x,y,z]:[出会いP]がx(≧0)回、[出会いQ]がy(≧0)回、[出会いR]がz(≧0)回の置換。
(P,Q,Rの定義より明らかに x≧y≧z≧0)

と定義する。

【証明】

証明では 与えられた a,b,c,a',b',c' の替わりに、
定義した p,q,r,p',q',r' を使用する。
(ただし、p'−p≧q'−q≧r'−r)

このことによって一般性が失われることがないのは明らかである。

状態(p,q,r)は[出会いP]が起こると
出会いの定義より状態(p+2,q−1,r−1)となる。
([出会いP]を例にしているが、[出会いQ]や[出会いR]でも同様)

3組ある2数の差は

(p+2)−(q−1)=(p−q)+3
(q−1)−(r−1)=(q−r)
(r−1)−(p+2)=(r−p)−3

いずれの2数の差も出会い前の2数の差に
3の倍数(3,0,−3)を加えたものである。

よって
p−q≡p'−q'(mod 3)かつ q−r≡q'−r'(mod 3)かつ r−p≡r'−p'(mod 3)

その後いろいろな出会いがいくつ起きようが、3の倍数が加えられるだけなのでこのことに変わりはない。

ところで、p+q+r=p'+q'+r' なので、
q−r≡q'−r'(mod 3)を満たすと、

−2(q−r)−(p+q+r)≡−2(q'−r')−(p'+q'+r') (mod 3)

∴ (r−p)−3q≡(r'−p')−3q' (mod 3)

3q,3q'は明らかに3で割り切れる。

∴ r−p≡r'−p' (mod 3)

同様にして、r−p≡r'−p' (mod 3) を満たすと、
p−q≡p'−q' (mod 3) も満たす。

よって、条件は q−r≡q'−r'(mod 3)だけでよい。(必要条件)

一方、出会いの定義より、

+2x−y−z=p'−p
−x+2y−z=q'−q
−x−y+2z=r'−r

ところが、[出会いP],[出会いQ],[出会いR]が同数回ずつあると元に戻り、何も起きなかったのと一緒である。
(つまり、置換[m,m,m]は置換[0,0,0]と同等)

それ故、状態(p,q,r)から状態(p',q',r')に移行する置換は無限にある。

そこで、総出会い回数(x+y+z)が最少である置換だけを考える。
移行可能な1つの置換[x,y,z]のzはx,y,zの最少値(≧0)である。
すると、zの数だけ[出会いP]も[出会いQ]も[出会いR]もあることになる。
同数回ずつの[出会いP],[出会いQ],[出会いR]は省略できるので、x,y,zの各値からzを引いてやる。
すると、最少置換での新しいx,y,zの最少値zは0になる。
それ故、どのような移行も2種類以下の出会いだけで可能である。

z=0 を上の式に代入すると、

2x−y=p'−p
2y−x=q'−q
−x−y=r'−r

1番目の式の両辺から3番目の式の両辺を引いてxを求めると、
x= (p'−p)−(r'−r)

2番目の式の両辺から3番目の式の両辺を引いてyを求めると、
y= (q'−q)−(r'−r)

p'−p=増分p、q'−q=増分q、r'−r=増分r とすると、移行するための最少置換は、
置換[ 増分p−増分r
増分q−増分r
0]である。
(ただし、増分p≧増分q≧増分r)

また、x,yを変形すると、
x= (p'−p)−(r'−r)
(p'−r')−(p−r)

y= (q'−q)−(r'−r)
(q'−r')−(q−r)

ところが、x,yは非負整数であるため

{(p'−r')−(p−r)} mod 3 = {(q'−r')−(q−r)} mod 3 = 0

でなければならない。

2数の差が3で割り切れることと、2数を3で割った余りが等しいこととは同等なので、

r−p≡r'−p'(mod 3)かつ q−r≡q'−r'(mod 3)

これも、必要条件で示したように、q−r≡q'−r'(mod 3)さえ満たしさえすればおのずと、
r−p≡r'−p'(mod 3)も p−q≡p'−q'(mod 3)も満たすことになる。

よって、条件は q−r≡q'−r'(mod 3)だけでよい。(十分条件)

また、pq+qr+rp=0 ならカメレオンは1種類しかなく、[出会いP]も[出会いQ]も[出会いR]も起きず元のままである。
ところが、状態(p,q,r)と状態(p',q',r')は同一でないので矛盾する。

よって、pq+qr+rp≠0

証明は終わり。

[ P・S ]

とても面白い問題ですね。
興味があったので、一般形での初期状態と最終状態における最少置換も求めてみました。
そんな問題もあってもよかったですね。


 『カメレオン』へ

 数学の部屋へもどる