n個のコインの中に偽コインが1つ入っています。天秤をb回使って偽コインを見つける(重いか軽いかも示す)という問題です。(n>3でbはできるだけ少ない解を求めること)
偽コイン問題は普通にやっても面白くないので、いろいろアプローチしてみたいと思います。
まずは、最大のbmaxについての考察です。
コインにNo.1, 2, …, n-1, nのように番号をつけます。
【1回目】No.1とNo.2を天秤にのせます。
1)No.1>No.2のとき
【2回目】No.1とNo.3を天秤にのせます。
No.1<No.3のとき-----偽コインはNo.1で軽い
No.1>No.3のとき-----偽コインはNo.1で思い
No.1=No.3のとき-----偽コインはNo.2で軽い
2)No.1<No.2のとき
【2回目】No.1とNo.3を天秤にのせます。
No.1<No.3のとき-----偽コインはNo.1で軽い
No.1>No.3のとき-----偽コインはNo.1で思い
No.1=No.3のとき-----偽コインはNo.2で重い
3) No.1=No.2のとき
【2回目】No.1とNo.3を天秤にのせます。
No.1<No.3のとき-----偽コインはNo.3で重い
No.1>No.3のとき-----偽コインはNo.3で軽い
No.1=No.3のとき
【3回目】No.1とNo.4を天秤にのせます。
No.1<No.4のとき-----偽コインはNo.4で重い
No.1>No.4のとき-----偽コインはNo.4で軽い
No.1=No.4のとき
…
【n-1回目】No.1とNo.nを天秤にのせます。
No.1<No.nのとき-----偽コインはNo.nで重い
No.1>No.nのとき-----偽コインはNo.nで軽い
No.1=No.nになることはない
これで終了しますので、bmaxは上記のようにNo.1のコインと1個ずつ比較し、偽コインがn個目だった場合です。
このときの天秤の使用回数はn-1回ですので、bmax=n-1
No.1~13のコインを、Aグループ(No.1~4), Bグループ(No.5~8), Cグループ(No.9~12), 及びNo.13の4つのグループに分けます。
【1回目】AグループをL側、BグループをR側の天秤に載せて比較する | |||
L=Rのとき | 【2回目】AグループをL側、Bグループから2個(No.5,6)とCグループから2個(No.9,10)をR側の天秤に載せて比較する | ||
L=Rのとき | |||
【3回目】A~Cから任意の1個とNo.13を天秤に載せて比較する | |||
任意の1個>No.13---偽コインはNo.13で軽い | |||
任意の1個<No.13---偽コインはNo.13で重い | |||
L>Rのとき | Cグループ(No.9~12)に偽コインがある 偽コインは軽い |
開始:2013年6月13日
最終更新:2013年6月18日