本文主要是介绍称球问题:12个球,有一个和其它的质量不一样,有一个天平可用,怎样找出它并说明它是轻是重,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
这算是一道智力题了。
一共12个球,有轻有重,所以一共有24种情况;天平每次有左倾、右倾和平衡三种情况,每次处理1/3,三次处理到1/27,所以无论怎样,三次称重一定可以得到结果。
先看看这个图:
下面我来一一分析:
先将12个球分为A1 A2 A3 A4,B1 B2 B3 B4,C1 C2 C3 C4这三份。
1.先称A和B:
如果平衡那么坏球在C中
2.再称C1 C2 C3和A1 A2 A3
如果平衡则在C4上
3.再任意取一个其他的和C4比较就可以判断出轻重
如果不平衡则在C1 C2 C3中,而且目前可以判断出轻重
3.在这三个中任意去两个称,如果不同就根据轻重判断是哪个,如果相同就是另外一个
如果不平衡那么坏球在A或B中,这里假设A轻B重
2.再称A1 A2 B2 和A3 A4 B1
如果平衡则在B3 B4上
3.称一下它俩找重的就对了
如果左轻右重那么是A1 A2轻了或者B1重了
如果左重右轻那么是A3 A4轻了或者B2重了
3.最后称下两个A,如果相同就是B中的那个重,如果不同就是A中轻的那个
这篇关于称球问题:12个球,有一个和其它的质量不一样,有一个天平可用,怎样找出它并说明它是轻是重的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!