今天突然想到了中学时候高峰老师和我们说过的12个球的推算方法.想了一下,还有点困难.
如果对半称肯定是推不出来的.只能4个4个来
1.首先把球分为3堆,每堆4个,用A,B,C表示,称A,B
if(A>B&&A<B){
则C里面都是真的,坏球在A,B中;
把A,B中的球,按重量分,重的一边标上1,2,3,4 轻的一边标上a,b,c,d
2.把1,2,a和3,4,b称
if(A==B){
则坏球是c,d中偏轻的那个(原因:1,2,a,3,4,b都是好球,c,d属于偏轻的)
}else{
if(A>B){
说明坏球有可能是1,2中偏重,或者是b偏轻,接着的算法有好多了
3. 1,2称
if(1==2){
b坏球.
}else{
if(1>2){
1是坏球
}else{
2是坏球
}
}
}else{
说明坏球可能是3,4 中偏重或者a偏轻,推理同上
}
}
}else{
C (e,f,g,h)里面有坏球,这就简单多了,方法就很多了,2次称出4个里面有个坏球
2. 用A或者B里面的2个球和C里面拿出来2个进行称(e,f)
if(相等){
则在另外2个球中,(g,h)
3.再从正常中取一个球和2个球其中一个对比(g),
if(相等){
h是坏的
}else{
g是坏的
}
}else{
则(e,f)是坏的
3.再从正常中取一个球和2个球其中一个对比(e),
if(相等){
f是坏的
}else{
e是坏的
}
}
}