日期:2014-05-20  浏览次数:20759 次

[猫] N <= (3的K次方 - 1) /2
以前csdn上面看到一个问题:

有13个球,其中有1个球和其他12个球不一样,可能重,也可能轻。
给你一个天平,最少要称几次才能把那个异常球取出来。

记得当时有很多的争论。
昨天看了《程序员》2006合订本。有位老兄给了个公式

N   <=   (3的K次方   -   1)   /2
N为小球的数量,   k为称得次数。
由此推论   k   =   3   正好满足条件。

推理方法还算精密,有兴趣可以看看,挺有意思的。

------解决方案--------------------
怎么得出的啊,复杂!!!!!!
------解决方案--------------------
听说过12小球,没听说过13个小球的啊
------解决方案--------------------
照你这么说4个球称两次可以得出结果,怎么称啊,没想出来。

------解决方案--------------------
TO:shan1119(大天使)
假设给四个球编号ABCD
取AB先称 如果平衡说明CD中有一个不一样,取AC称,如果平衡,说明不一样是D,不平衡是C
如果不平衡说明AB有一个不一样,取AC称,如果平衡,说明不一样是B,不平衡是A
------解决方案--------------------
这个题目书上面有的。。。一看就知道了。。。
------解决方案--------------------
的确,是不错,学习一下..哈哈哈~~~~~~~~~~~`
------解决方案--------------------
如果A == B,怎么判断C,D中哪个轻,或重?你们说的只能找出来,但不能确定轻重啊
------解决方案--------------------
如果第二次称的时候,平衡了,就判断不出来了,不平衡倒是可以的
------解决方案--------------------
ting jian dan de
------解决方案--------------------
汗~
abcd四球:
a----------b
if(平衡){
a----------c
if(平衡){
得d
}else{
得c
}
}else{
a----------c
if(平衡){
得b
}else{
得a
}
}
------解决方案--------------------
学习