zoukankan      html  css  js  c++  java
  • 黑帽子白帽子问题

    题目:
    已知有4个人, 其中A面向右边而坐, 其他3人面向左边而坐;
    有4顶帽子, 其中2顶白色帽子, 2顶黑色帽子;
    按照如图的方式, 在A和其他三人之间设置屏障, 屏障两侧互不可见;
    按照图中颜色顺序为每个人戴好帽子, 每个人都清楚帽子的总共是2黑2白;
    且每个人必须保持朝向不变, 禁止询问和走动, 请问谁能准确知道自己帽子的颜色?

    答案: C

    解析:
    首先A被隔离, 不知道任何人的帽子颜色, 所以A判断自己的帽子颜色只能靠瞎猜, 排除;
    同样的B虽然没有隔离, 但是B和A处境相同, 啥也看不到, 只能瞎猜, 排除;
    再看D, D看到的帽子数量最多, 他看到B是白色, C是黑色, 但是A被隔离了, 无法判断A也就无法判断自己的帽子颜色, D排除;
    最后C能看见B戴了白色帽子, 根据D的反应, 如果自己戴的是白色的帽子, 那么D就能够准确判断D自己戴了黑帽子, 但是C发现D并不能准确判断帽子颜色, 所以C自己一定是戴了黑帽子;

    拓展: 在这个问题中, C一定是最有利的人, 因为他既能看到B的帽子颜色又能根据D的反应反推自己的帽子颜色, 所以, 无论帽子的顺序如何改变, C最终都能判断出自己的帽子颜色.

  • 相关阅读:
    linux输出信息调试信息重定向
    JDBC复习
    在Java中用for循环打印菱形
    深入.NET框架
    C#中等号左右的文本值交换
    使用集合组织相关数据
    深入类的方法
    值传递和引用传递专题案例
    深入C#数据类型
    Computer Vision Rescources
  • 原文地址:https://www.cnblogs.com/sn0wp3ak/p/13738700.html
Copyright © 2011-2022 走看看