这是一道数学题。
题目描述
今有12枚外观完全相同硬币,其中11枚是正品,质量完全相同;另一枚是次品,质量与正品严格不同。有一精准轻天平,在忽略空气阻力和重力加速度恒定的前提下,请设计一种方案,使得在仅用上述材料的前提下,至多称量3次便找出次品。
Solution
首先,你要想办法让你的每次称量变得更有意义。具体表现为:如果你只关心平还是不平,那么你至多只能判断出 2 3 = 8 < 12 2^3=8<12 23=8<12 种情况,这显然是不够优秀的。我们惊喜地发现, 3 3 = 27 > 12 3^3=27>12 33=27>12,所以这道题貌似可做。
考虑一种很直观的想法。如果我一次的称量不是对半分的,那么在最差情况下,我只能筛选出总数的不到一半的硬币。这显然没有对半分更优,于是我们考虑对半分。经过2次称量后,剩下 12 × 2 − 2 = 3 12\times2^{-2}=3 12×2−2=3 枚硬币。这时我们发现,由于你不知道次品的轻重情况,所以你不可能通过一次称量找出次品。
刚刚这种做法有什么弊端呢?把12个硬币分成4组,每组3个。第一次挑两组上称。如果平,那么我们这次的称量的意义仅仅在于,将样品容量减小一半;对于次品轻重情况,我们一概不知。考虑优化我们的分组方式,使得我们在减小规模的同时,知晓相对质量。换句话说,当我们称到平衡的时候,增加我们获取的信息。
为了优化平衡的情况,尝试分成3组,每组4个,即{1,2,3,4},{5,6,7,8},{9,10,11,12}。这样即使平衡,我们也获得了更多的信息。假设平衡,这样问题就变成从4个里面称2次。这个问题显然很好解决(第一次称12,第二次称13即可)。那我们就考虑不平衡的情况。不妨设1234 < 5678。
根据刚刚那套理论,我们再次尝试对半分。我们发现,我们又绕回到原来的坑点了——貌似无论怎么选,都有平衡的蛋疼情况。怎么办呢?
1234
<
5678
1234 < 5678
1234<5678
12
=
34
?
12=34?
12=34?
容易理解,造成判断困难的原因是,有一些优品始终被称,干扰了判断。
考虑将次品换边,当天平两端硬币数相同时,天平的轻重情况总会改变。不妨将部分硬币换边。比如这样
125
>
369
125>369
125>369
9是从安全区借过来用的。经过这次称量,我们最后得到形如
X
A
<
B
C
XA<BC
XA<BCor
X
A
>
B
C
XA>BC
XA>BC这种情况,其中X是正品。
这个时候,把BC称一下就完事了。