偽コインと天秤
重い 1 枚を天秤で特定する。n 枚のとき、最少で何回量れば必ず見つかるか。
解説
考え方
見た目が同じコインの中に、1 枚だけ重さの違う偽物がある(ここでは重い)。天秤 1 回の結果は「左が重い・右が重い・釣り合う」の 3 通り。コインを 3 つの組に分けて 2 組を載せれば、どの結果でも偽物のある組が 1 つに決まる。
必要な回数
1 回で候補を 1/3 にできるので、k 回で 3ᵏ 枚まで調べられる。n 枚に必要な回数は、3ᵏ ≥ n となる最小の k。
重いか軽いかわからないとき
偽物が重いか軽いか分からない場合は、天秤が傾いても「傾いた側に重い偽物があるのか、反対側に軽い偽物があるのか」が分からないので、より複雑になる。
偽物があることが分かっていて、それを見つけるだけなら、k 回で (3ᵏ − 1)/2 枚まで調べられる。n 枚に必要な回数は ⌈log₃(2n + 1)⌉。
偽物が重いか軽いかまで言い当てるなら、k 回で (3ᵏ − 3)/2 枚まで。3 回なら (27 − 1)/2 = 13 枚から偽物を見つけられるが、重いか軽いかまで必ず分かるのは 12 枚まで。
12 枚のコインを 3 回で見分けるこの問題(12 枚のコインの問題)は、遅くとも 1945 年には印刷物に載っていた。
このツールの「重いか軽いかわからない」では、偽物は半々の確率で重いか軽いかが決まる。コインは 3 枚から選べる(2 枚では、どちらが偽物か決められない)。
偽物が何枚もあるとき
このツールの「偽物が k 枚」では、n 枚の中に同じ重さの重い偽物が k 枚ある。天秤が教えるのは「どちらの皿に偽物が多いか」だけで、左右に 1 枚ずつのっていても釣り合う。
偽物の組の可能性は ₙCₖ 通り。1 回の結果は 3 通りなので、m 回では 3ᵐ 通りまでしか見分けられず、少なくとも ⌈log₃ ₙCₖ⌉ 回は必要になる(数え上げで決まる下限)。
ツールは、コインを「これまで同じ皿にのってきたまとまり」に分け、どの結果になっても残りの回数で必ず決められる量り方があるかを、すべて調べて最少の回数を求める。
このツールで選べる範囲(12 枚まで、偽物 2〜4 枚)では、最少の回数はいつもこの下限と同じになった(計算で確かめた結果)。
偽物が何枚もあって、重いか軽いかわからないとき
このツールの「偽物が k 枚・重さ不明」では、k 枚の偽物はどれも同じ重さで、本物より重いか軽いかはわからない(半々の確率で決まる)。天秤が傾いても、傾いた側に重い偽物が多いのか、反対側に軽い偽物が多いのかが分からない。
n = 2k のときは、何回量っても偽物を決められない。ある k 枚が重い偽物の場合と、残りの k 枚が軽い偽物の場合とで、左右に同じ枚数をのせたときの結果がいつも同じになるからである。
可能性は、偽物の組の ₙCₖ 通りと、重いか軽いかの 2 通りで 2 × ₙCₖ 通り。同じ組の「重い」と「軽い」は結果がいつも左右逆になるので、重いか軽いかが分からないまま終わってよいのは、m 回とも釣り合ったときの 1 通りだけ。そのため 2 × ₙCₖ ≤ 3ᵐ + 1 でなければならない。
このツールで選べる範囲(12 枚まで、偽物 2〜4 枚)では、最少の回数は、偽物が重いと分かっているときと同じか、1 回多い(計算で確かめた結果)。
最短の方法で 1 回量る
どの項目でも、「答えを見る」を押すと「最短の方法で 1 回量る」が使える。それまでの記録から分かったことをもとに、どの結果になっても残りを最少の回数で必ず見つけられる量り方を計算で決め、その 1 回を量る。自分で何回か量ったあとに押してもよい。
偽物は重い:記録と合う候補を 3 つの組に分け、2 組を左右にのせる。
重いか軽いかわからない:コインを「まだわからない」「重いかもしれない」「軽いかもしれない」「本物」の 4 種類に分けて数える。左が重ければ、左の皿の候補は「重いかもしれない」、右の皿の候補は「軽いかもしれない」になり、のせなかった候補は本物と分かる。見つけるのに同じ回数ですむなら、重いか軽いかまで決まる量り方を選ぶ。
偽物が k 枚:まとまりごとの偽物の枚数の組のうち、記録と合うものを数えて量り方を探す。左右の枚数をそろえるのに、本物と分かったコインを使う。重さ不明のときは、組ごとに「重い」「軽い」の両方を考えて数える。
左右の皿の枚数がちがうと、枚数の多い側が必ず重くなるので、その 1 回からは何も分からない。
このツールで選べる範囲では、どの偽物(の組)でも、この量り方をくり返すと最少の回数で見つかる(計算で確かめた結果)。