8瓶酒一瓶有毒

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/WinstonLau/article/details/82899947

题目描述:

        8 瓶酒,其中 1 瓶有毒,用人测试。每次测试结果 8 小时后才会得出,而你只有 8 个小时的时间。问最少需要( B )人测试?

        A. 2          B. 3          C. 4          D. 6

考点分析:

        这题考察的主要是 10 进制向 2 进制的转换的思想,其中还夹杂一点排列组合的味道

解题方法:

  1. 将 8 瓶酒分别编号为 0~7
  2. 再将 0~7 分别用三位的二进制表示,结果如下:
    十进制 二进制
    0(代表第 1 瓶酒) 000
    1(代表第 2 瓶酒) 001
    2(代表第 3 瓶酒) 010
    3(代表第 4 瓶酒) 011
    4(代表第 5 瓶酒) 100
    5(代表第 6 瓶酒) 101
    6(代表第 7 瓶酒) 110
    7(代表第 8 瓶酒) 111
  3. 将三个人分别编号为 A、B、C
  4. 从上述表格中可以发现,二进制的第 1 位是 1 的有第 5、6、7、8 瓶酒,二进制的第 2 位是 1 的有第 3、4、7、8 瓶酒,二进制的第 3 位是 1 的有第 2、4、6、8 瓶酒
  5. 让 A 喝下第 5、6、7、8 瓶酒,让 B 喝下第 3、4、7、8 瓶酒,让 C 喝下第 2、4、6、8 瓶酒,用表格展示如下:
    喝的酒
    A 第 5、6、7、8 瓶酒
    B 第 3、4、7、8 瓶酒
    C 第 2、4、6、8 瓶酒
  6. 由于有三个人,因此他们喝酒之后的中毒情况共有 8 种,根据每一种中毒情况我们就可以确定哪一瓶是毒酒,用表格展示如下:

    中毒情况 问题分析 对应的毒酒编号
    都没有中毒 只有编号为 0 的酒没有人喝,因此第 1 瓶酒是毒酒 0(代表第 1 瓶酒)
    只有 A 中毒 第 5、6、7、8 瓶酒中有一瓶是毒酒,但第 6、7、8 瓶酒 B 或 C 都喝过,没有中毒,因此第 5 瓶酒是毒酒 4(代表第 5 瓶酒)
    只有 B 中毒 第 3、4、7、8 瓶酒中有一瓶是毒酒,但第 4、7、8 瓶酒 A 或 C 都喝过,没有中毒,因此第 3 瓶酒是毒酒 2(代表第 3 瓶酒)
    只有 C 中毒 第 2、4、6、8 瓶酒中有一瓶是毒酒,但第 4、6、8 瓶酒 A 或 B 都喝过,没有中毒,因此第 2 瓶酒是毒酒 1(代表第 2 瓶酒)
    只有 A 和 B 中毒 A 和 B 同时中毒,说明第 7、8 瓶酒中有一瓶是毒酒,而C 喝的第 2、4、6、8 瓶酒都不是毒酒,因此第 7 瓶酒是毒酒 6(代表第 7 瓶酒)
    只有 A 和 C 中毒 A 和 C 同时中毒,说明第 6、8 瓶酒中有一瓶是毒酒,而 B 喝的第 3、4、7、8 瓶酒都不是毒酒,因此第 6 瓶酒是毒酒 5(代表第 6 瓶酒)
    只有 B 和 C 中毒 B 和 C 同时中毒,说明第 4、8 瓶酒中有一瓶是毒酒,而 A 喝的第 5、6、7、8 瓶酒都不是毒酒,因此第 4 瓶酒是毒酒 3(代表第 4 瓶酒)
    全中毒 只有第 8 瓶酒三个人都喝了,因此第 8 瓶酒是毒酒 7(代表第 8 瓶酒)

        

猜你喜欢

转载自blog.csdn.net/WinstonLau/article/details/82899947