すのものの「ニセ金貨とてんびんのパズル」

問題. k を 3 以上の整数とする。k 枚の金貨があり、 そのうち k-1 枚は同じ重さであるが残りの 1 枚は(ごくわずかだけ)重さが違う。 ほかに、 左右どちらの皿に乗せたものが重いかだけを知ることのできるてんびんがある。 このてんびんを使って重さの違う金貨を見つけ出すには、 何回てんびんを使う必要があるか?

答え. 正の整数 n が n-1 < log3(2k + 1) <= n を満たすとき n 回である。 この式を書きかえれば (3n-1 - 1) / 2 < k <= (3n - 1) / 2 となる。

重さの違う金貨を「求める金貨」、 てんびんの左右の皿に金貨を乗せてどちらが重いかを知ることを 「比較」と呼ぼう。

何回かの比較のあとでは、 「もしもこれが重さの違う金貨であるなら『より重い』」 「もしもこれが重さの違う金貨であるなら『より軽い』」 とわかることがある。 それらの金貨にはそれぞれ「重いかも」「軽いかも」の「目印」をつける。 ここで「目印」と言ったらこの意味に限る。 求める金貨でないことが判明した金貨を「普通の金貨」と呼ぶ。

補題 X. 0 以上の整数 n と正の整数 k が 3n-1 < k <= 3n を満たしている。 k 枚の金貨があり、 それらの中には一枚だけ重さが(ごくわずかだけ)違う金貨が含まれている。 それ以外の金貨は同じ重さである。 さらに、全ての金貨に 「重いかも」「軽いかも」のどちらかの目印がついている。 このとき、てんびんを n 回だけ使って重さの違う金貨を見つけ出せる。 ただし、k = 2 で「重いかも」「軽いかも」が 1 枚ずつの場合は除く。

証明: n = 0 のとき k = 1 である。このときは正しい。 n = 1 のとき k = 2, 3 である。 k = 3 のときは同じ目印のついた金貨を天秤の左右の皿に乗せて比較すればよい。

n >= 2 のときを考える。k > 3 である。 これらの金貨を“ほぼ三等分”する。すなわち、 k = 3j, 3j+1, 3j+2 (j は正の整数)のどれが成り立つかに従って

の三つの群に分ける。 ただし、第二群と第三群を合わせたものに含まれる 「重いかも」と「軽いかも」のついた金貨の数はどちらも偶数であるようにする。 それには、次のようにすればよい。 第二群と第三群とをてんびんで比較する。 k <= 3n だったことから、 上で指定した各群の枚数が 3n-1 以下であることが次のようにして示せる。

いずれにせよ、n がより小さい場合に帰着する。 ただし、 「重いかも」「軽いかも」が 1 枚ずつの場合に帰着してしまったら、 いま求める金貨でないと判明した金貨を「重いかも」と比較する。

[証明了]

注:「重いかも」3 枚と「軽いかも」2 枚の計 5 枚の場合は、 上のやり方では「重いかも」「軽いかも」 が 1 枚ずつの場合に帰着する可能性がある。

補題 Y. 0 以上の整数 n と自然数 k が (3n-1 + 1) / 2 < k <= (3n + 1) / 2 を満たしている。 k 枚の金貨があり、 それらの中には一枚だけ重さが(ごくわずかだけ)違う金貨が含まれている。 それ以外の金貨は同じ重さである。このとき、 これとは別に普通の金貨が一枚あれば、 天秤を n 回だけ使って重さの違う金貨を見つけ出せる。

証明: n = 0 のときは k = 1 である。この場合には正しい。 n = 1 のときは k = 2 である。 この場合はどちらかを普通の金貨と比較すればよい。

n >= 2 とする。k >= 3 である。 これらの金貨を“ほぼ三等分”する。すなわち、 k = 3j, 3j+1, 3j+2 (j は正の整数)のどれが成り立つかに従って

に分ける。

k <= (3n + 1) / 2 であることから、 第一群の枚数が (3n-1 + 1) / 2 以下であることが次のようにわかる。 第二群と第三群を合わせた金貨の枚数が 3n-1 以下であることは次のようにわかる。

k = 3j のときおよび k = 3j + 1 のときは第二群と第三群をてんびんで比較する。 k = 3j + 2 のときは、 第二群と、第三群に普通の金貨を加えたものとをてんびんで比較する。

[証明了]

定理 Z. 2 以上の整数 n と 3 以上の整数 k が (3n-1 - 1) / 2 < k <= (3n - 1) / 2 を満たしている。 k 枚の金貨があったとし、 それらの中には一枚だけ重さが(ごくわずかだけ)違う金貨が含まれているとする。 それ以外の金貨は同じ重さである。このとき、 天秤を n 回だけ使って重さの違う金貨を見つけ出せる。

証明: 金貨を“ほぼ三等分”する。すなわち、 k = 3j, 3j+1, 3j+2 (j は正の整数)のどれが成り立つかに従って

に分ける。 どの群も 1 枚以上の金貨を含む。 第一群の枚数が (3n-1 + 1) / 2 枚以下であることは、 次のように示せる。 第二群と第三群を合わせたものに一枚を加えると 3n-1 枚以下であることは次のように示せる。 第二群をてんびんの片方の皿に、 第三群をもう一方の皿に乗せて比較する。

[証明了]


すのもの Sunomono 2001-12-26 (3) 02:20:40 +0900