问题描述
有十二个鸡蛋,其中有一个是坏的(重量与其余鸡蛋不同,不知道是重了还是轻了),用天平称三次,称出坏的那个鸡蛋
问题解决
首先将十二个鸡蛋进行编号,分为为 1,2,3 . . . 12,将其分为三组,1 ~ 4,5 ~ 8,9 ~ 12,在其中任取两组进行比较(假设取的第一组与第二组,这个不影响答案)
- 第一组与第二组相等,说明出现问题的是第三组,所以只需要从1 ~ 8号拿出三个(这三个都是正常的)与第三组任取三个(9,10,11)比较
- 相等则出现问题的是12号
- 不相等则知道了坏的鸡蛋是轻了还是重了(假设轻了,不影响答案)并且出现问题的鸡蛋在9,10,11中,在9,10,11中任取两个(9,10)进行比较
- 相等则坏鸡蛋为11号
- 不相等但是由前面得出了坏鸡蛋轻了,则坏鸡蛋为轻的那个
- 第一组与第二组不等,说明坏鸡蛋在第一组或者第二组(假设第一组重于第二组),在第一组中选取4号,第二组选取5,6,7再组成一组Z1,第二组8号与第三组9,10,11再组成一组Z2,再比较Z1与Z2的大小
- 相等则出现问题的在1,2,3号中,同时也可以推断出来坏鸡蛋是轻了还是重了,所以从1,2,3中任取两个进行比较,如果相等则为没取的那个,如果不等则为重的那个(因为前面假设条件为第一组重于第二组)
- 不相等则出现问题可能在Z1也可能在Z2
- Z1 > Z2:说明出现问题的为4号或者8号,从这两个中任取一个与第三组任意一个比较如果相等则为没取那个,如果不等则坏鸡蛋为取的那个
- Z1 < Z2:说明出现问题的为5,6,7号,并且推断出坏鸡蛋为重了还是轻了(根据前面的假设这里应该为坏鸡蛋变轻了),从中任取两个进行比较,如果相等则为没取那个,如果不等则为轻的那个
可能会在Z1与Z2比较大小哪里感觉到迷糊,你可以使用假设方法,比如Z1 > Z2这里,是怎么知道坏鸡蛋为4,8之中的一个,从我们选取的4,5,6,7,8,9,10,11中的9,10,11一定是好的,所以只有4,5,6,7,8中有问题,我们假设5,6,7有问题,而前面第二组是轻于第一组的,所以我们的结果应该是Z1 < Z2但是我们的结果不是,所以出现问题的是4号与8号,同理Z1 < Z2也可以这么进行假设。