又是一年的1024程序员节
给大家分享一个工具集网站
顺便记录个笔试中的智力题吧
在12个球中找出一个质量不一样的来。有12个外观一致的小球,其中只有一个小球与其他的小球质量不同(不知道是多是少),怎么用一个天平称三次把这个不一样的小球找出来?
首先你得告诉我一个前提,这个球是比其他重还是比其他轻,现在假设它比其他球重。
第一种方法:
过程如下:
第一次,把十二颗球分为两堆,天平左右各六颗,天平重的那边拿出来。
第二次,把天平重的那边六个球再分为两堆,天平左右各三个,天平重的那边拿出来。
第三次,把天平重的那边三个球拿出两个,天平左右各一个,如果天平平衡,那么剩下的球就是不一样的球,如果天平不平衡,重的那边就是不一样的球。
反之,这个球比其他球轻,证明过程一样。
第二种方法:
过程如下:
1.把十二个球分成三组(1,2,3,4)(a,b,c,d)(A,B,C,D)
2.取(1,2,3,4)和(a,b,c,d)分别放在天秤左、右两端.(第一次称)
(1)如果天秤平衡:
1. 则说明(A,B,C,D)中包含待找出的球.
2.从中(A,B,C,D)取3个球(如A、B、C)和从前两组正常球任意取三个球分别放在天秤两端.(第二次称)
如果天秤平衡:
则说明D为我们要找的球.然后和任意一个正常球球比较后便知道是轻还是重.(第三次)--完成
如果天秤不平衡:
便能知道3个球中有我们等找的球,且由第二次的结果可知所找的球是轻还是重。
然后任取三个中的两个如果天秤平衡则另一个球便是要找的球.
不平衡根据刚才对轻重的判断找出该球.(第三次称)--完成
(2)如果天秤不平衡:
1.说明在(1,2,3,4)(a,b,c,d)中有我们要找的球.
2.此时我们从正常的A,B,C,D中取出三个球(如ABC),把a、b、c、d中三个(如a、b、c)换出,
再用a、b、c换出另一组的1、2、3(待定),天平左右两端分别是a、b、c、4和A,B,C,d。(第二次称)
如果天秤平衡:
便能知道1、2、3球中有我们等找的球,且第一次的结果可知所找的球是轻还是重。
然后任取三个中的两个如果天秤平衡则另一个球便是要找的球.
不平衡根据刚才对轻重的判断找出该球.(第三次称)------完成
如果天秤不平衡:
(1) 与第一次称重时左右轻重不同(天平左右倾斜变化),
要找的在a、b、c中且知道它的轻重。
任取三个中的两个如果天秤平衡则另一个球便是要找的球.
反之也能找出.(第三次称)--------完成
(2) 与第一次称重时左右轻重相同(天平左右倾斜不变),
则球是4或d。从中任取一个(如4)与正常球称。(第三次称)
如平衡则d是要找的球,且由前两次可知轻重。--------完成
不平衡则4为要找的球,且轻重一看便知。--------完成
最后,祝每位程序员节日快乐!世界没有BUG