12个球一个天平,现知道只有一个和其它的重量不同,问怎样称才能用三次就找到那个球。
13个呢?(注意此题并未说明那个球的重量是轻是重,所以需要仔细考虑)(5分钟-1小时)
12个球的时候3 + 3 + 3 + 3 分成2组,比较一次,对于不同的那组,取一组中的3个和正常组中的3个再比较1次,确定出有问题的3个球和问题球的轻重,然后最后一次有问题的3个球里取2个球比较一次,即可;
错误的算法
13个球分为1 + 3 + 3 + 3 + 3, 4个3分2组比较一次,确定出1 + 3 + 3问题球,然后每个3中取2个球各自相互比较,如果都相同,剩下1 + 1 + 1再和上步一样比较一次即可;
13个球也是最少三次,算法过程见
http://wenku.baidu.com/link?url=VlIe0oxaIqrdPCZPVEKSvk7jJPCj7JjlYfoBngkJdF2rqOInRij25h9AskdsGvT8AGz0TXQdJ5IXUFnLpbV1PM5MOwe9PGYt92SQxt8DtX_
正确为 1 + 4 + 4 + 4
最复杂的情况是4==4的时候,异常球出现在5个球当中时,这是从5个中取3个,从正常球中取一个
组成2和2比较,如果不等则从5取3的3个球有异常球,剩余一次就出来了,3个异常球+1个正常球,2和2比较之后,2个从5中取出的球比较一次,对比下两次比较的大小箭头方向就可以确定异常球是谁,且是轻还是重