如题
一开始想到的一个想法,,最坏情况下是4次,后来看到的一个3次的想法
4次的:
考虑4个球的话,拿出其中两个,称一下
如果相等,坏球就是剩下的那俩里了,再称一次就行
所以4个球需要两次就可以了
考虑12个球分成三堆,一堆4个
拿出两堆,称一下,如果相等,说明在剩下的那一堆里,然后称两次就出来了(3次)
如果不相等,把其中一堆分成两小堆(一小堆两个),称一下,
相等说明不在这一大堆里,而是在另一堆里
然后再称两次得出来(4次)
不相等,确定在当前堆里,还是再称两次(4次)
3次的:
为了方便标一下号(大于10了,我写成16进制吧)
1234——5678——9abc
同样的分成三堆,选两堆(为了方便这里选前两堆)称一下
相等的话和上面一样(3次),不相等的话(为了方便,假设1234轻一些(无妨,设1234轻))
那么,如果球是轻的话,一定在1234里,否则(重)在5678里
那么、把1234,5678分一下,拿出6个来
我们称一下12356和49abc,如果相等了
说明坏球在78里,称一下就好(3次)
12356轻了,说明,球在123里,称一下(称一下1和2,相等是3,不等轻的就是(已经知道是轻的球了))得出(3次)
为啥不是在49abc里呢,因为只有4可能是轻的,如果是4的话应该是49abc轻才对
12356沉了,那就是56里,称一下(3次)
同理