又是一年的1024程序员节

1024

给大家分享一个工具集网站

http://sakura.ys168.com/

 

顺便记录个笔试中的智力题吧

在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

 

 

posted @ 2019-10-24 16:32  changlinlo  阅读(205)  评论(0编辑  收藏  举报