• 称3次,找出坏鸡蛋


    有十二个鸡蛋,其中有一个是坏的(重量与其余鸡蛋不同),现要求用天平称三次,称出坏的那个鸡蛋

    准备工作:将十二个鸡蛋编号,1、2、3......11、12。分为三组,1、2、3、4为第一组,5、6、7、8为第二组,9、10、11、12为第三组。其中,Time = ?表示这是第?次称。

    分析:取第一组、第二组,分别放置在天平两端,两种情况:平衡,不平衡(Time = 1)

      ♦ if (平衡):这8个鸡蛋都是好的,取3个(1、2、3)出来,和剩下4个中的任意3个(假设是9、10、11),将这两组分别放在天平两端,两种情况:平衡,不平衡(Time = 2)

            if(平衡):1-11鸡蛋都是好的,鸡蛋12是坏的(只称了两次,找出了坏鸡蛋),任选一个好鸡蛋,和鸡蛋12放在天平两端(找出坏鸡蛋是轻还是重)(Time = 3)

            else(不平衡):9、10、11的三个鸡蛋中有一个是坏的,鸡蛋12是好的(并且知道坏鸡蛋是轻还是重)。任取两个鸡蛋(9、10),放在天平两端,两种情况:平衡,不平衡(TIme = 3)

                    if(平衡):鸡蛋11是坏的

                    else(不平衡):根据轻重得出9、10两个鸡蛋中哪个是坏鸡蛋

      ♦ else(不平衡):第三组鸡蛋9、10、11、12是好的。第一组和第二组的鸡蛋一定是一组轻,而另一组重(假设第一组重<1、2、3、4>)。从第三组鸡蛋重任取3个(9、10、11),将4、5、6、7作为第一组,8、9、10、11作为第二组分别放在天平两端,则有三种情况:第一组重或第二组重(不平衡),一样重(平衡)(Time = 2),分别如下:

      A、第一组重,因为9、10、11是好鸡蛋,而5、6、7不管是放左边还是右边,对哪边重并未影响,所以有问题的在4、8之间,取鸡蛋12和4、8中的任一鸡蛋比较轻重(Time = 3),从而找出有问题的鸡蛋

      B、第二组重,则问题出在5、6、7鸡蛋上,且知道坏鸡蛋比好鸡蛋轻,任取两个鸡蛋(5、6)放天平两端称,不平衡(Time = 3),则轻的为坏鸡蛋;否则7为坏鸡蛋

      C、一样重,则问题在1、2、3鸡蛋上,且可以知道坏鸡蛋比较重,任取两个(1、2)放在天平两端(Time = 3),不平衡,则重的为坏鸡蛋;否则3为坏鸡蛋

        

  • 相关阅读:
    历史书单
    《Tornado介绍》—— 读后总结
    基于TensorFlow的深度学习系列教程 2——常量Constant
    深度学习Tensorflow生产环境部署(下·模型部署篇)
    深度学习Tensorflow生产环境部署(上·环境准备篇)
    Crontab和sudo中无法使用TensorFlow ImportError libcublas.so.9.0
    基于TensorFlow的深度学习系列教程 1——Hello World!
    想要接触人工智能吗?先要学会如何阅读论文
    《数据挖掘与数据化运营实战 思路、方法、技巧与应用》—— 读书笔记
    《新参者》—— 读后总结
  • 原文地址:https://www.cnblogs.com/xiaolongren/p/12494897.html
Copyright © 2020-2023  润新知