zoukankan      html  css  js  c++  java
  • 一道推理题

    幼儿园有7个聪明的孩子做猜颜色游戏。先让其中6个孩子围成一圈,剩下一个在圆圈中间。由于中间孩子的遮挡,圈中的6个孩子只能看到其他5个孩子。游戏开始时,老师拿出4块红色头巾和3块蓝色头巾,让7个孩子闭眼,然后把头巾蒙在7个孩子头上。系好以后,叫组成圆圈的6个孩子睁眼,中间孩子仍闭眼。让他们猜测自己头上是什么颜色的头巾,等了很长时间都没有人猜出来。这时圆圈中间仍闭眼的孩子说我猜出来了。请问,圈中这个孩子头上是什么颜色的头巾?

    思考过程:

      首先,如果某个孩子看到了4块红色头巾或者3块蓝色头巾。那么他就可以肯定自己头上是另外一种颜色的头巾。而这种情况并没有发生,那么可以知道,在所有睁眼的孩子眼中,看到的是3块红色和2块蓝色头巾。

      假定中间孩子头上是蓝色头巾,那么圈中还有2块蓝色头巾,某一带有蓝色头巾的孩子 A 眼中可能出现1块蓝色头巾(圈中另一块蓝色头巾被中间孩子遮挡了)和2块蓝色头巾(没被遮挡);当是前一种情况时,A 孩子可以断定自己头上就是蓝色(他看到了4块红色头巾);后一种情况时,A眼中被遮挡的红色头巾的孩子 B,就会发现有2块蓝色头巾(包括中间孩子和剩下的一块非A的蓝色头巾),这时他不能断定情况。最多可能出现两次这样的情况(所有2个蓝色头巾的孩子)。这时,圈中还剩下2个红色头巾的孩子可以看到3块头巾,于是他们可以判断自己头巾的颜色。这与实际情况不符。于是,中间孩子的头巾颜色是红色。

      正向推理也很简单:当中间是红色时,圈中红蓝色头巾各有三块。存在这样的排列方式,使得每个孩子眼中只有3块红色,2块蓝色。即红色孩子眼中,被遮掩的头巾总是蓝色,反之亦然。

  • 相关阅读:
    5.21动态生成dll
    xtype:"combo" 动态加载
    用javascript 禁止右键,禁止复制,禁止粘贴
    页面正在载入(js代码)
    Ext.data.Store
    转 C#生成JSON数据格式的函数
    .Net 3.5环境下常用数组性能测试
    Lucene.Net 2.3.1开发介绍 —— 二、分词(六)
    Lucene.Net 2.3.1开发介绍 —— 三、索引(三)
    Lucene.Net 2.3.1开发介绍 —— 三、索引(二)
  • 原文地址:https://www.cnblogs.com/friedwm/p/2741067.html
Copyright © 2011-2022 走看看