一个推理问题:求老师生日
小明和小强都是张老师的学生,张老师的生日是M月N日, 
2人都知道张老师的生日是下列10组中的一天, 
张老师把M值告诉了小明,把N值告诉了小强, 
张老师问他们知道他的生日是哪一天吗? 
3月4日   3月5日   3月8日 
6月4日   6月7日 
9月1日   9月5日 
12月1日  12月2日  12月8日 
小明说:如果我不知道的话,小强肯定也不知道 
小强说:本来我也不知道,但是现在我知道了 
小明说:哦,那我也知道了 
请根据以上对话推断出张老师的生日是哪一天?

解:小明知道的m值为3、6、9、12中的其中之一

小张知道的n值为1、2、4、5、7、8中的其中之一 ,注意2和7只出现了一次

第一句,“小明说:如果我不知道的话,小强肯定也不知道”排除6月,12月。如果小明拿到6月,12月,小张则有可能知道生日(因为小张拿到7或2就知道了生日,6月7日,12月2日的N是唯一的),小明则不敢100%的肯定说小张不知道,因此小明拿的是3月或9月。 现在剩下:

3月4日   3月5日   3月8日

9月1日   9月5日

第二句,“小强说:本来我也不知道,但是现在我知道了”,据小强说“本来不知道”的话推出,再次排除2日,7日,验证了前面的推理。据“但是现在我知道了”排除5日。如果小强拿的是5日,则有可能是3月5日或9月5日,小强不敢100%肯定自己知道。因此现在剩下:

3月4日      3月8日

9月1日

第三句,“小明说:哦,那我也知道了”,排除3月。如果小明手上拿到的是3月,则有可能是3月4日或3月8日,小明不敢100%肯定自己知道。所以最终答案是:9月1日。

一个推理问题:求老师生日相关推荐

  1. PTA 7-1 老师生日

    小C在ACM实验室已经呆了1年有余了,听从Caisz老师教诲,编程能力大大提高的同时,独立自学能力.分析问题解决问题的能力-都有很大提高,人也变得积极乐观.自信了.某天晚上,佳佳师姐(小C + 佳佳 ...

  2. 《剑指offer》写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。...

    弱菜刷题还是刷中文题好了,没必要和英文过不去,现在的重点是基本代码能力的恢复. [题目] 剑指offer 写一个函数,求两个整数之和,要求在函数体内不得使用+.-.*./四则运算符号. [思路] 直觉 ...

  3. python输入一个正整数n求下列算式的值_C语言编写程序:输入一个正整数x和一个正整数n,求下列算式的值。,C语言 编写一个程序,输入一个正整数,求出它是几位数。...

    导航:网站首页 > C语言编写程序:输入一个正整数x和一个正整数n,求下列算式的值.,C语言 编写一个程序,输入一个正整数,求出它是几位数. C语言编写程序:输入一个正整数x和一个正整数n,求下 ...

  4. MODE —— 输入一个数字,求从1加到该数的和(知识点:for循环嵌套while循环)

    问题描述: 终端输入一个数字,求从1加到这个数字的和! 运行结果: 代码部分: #include <stdio.h> int main() {unsigned int sum = 1UL; ...

  5. C语言输入一个任意数求各位数的和

    C语言输入一个任意数求各位数的和 int main(void) {int x, r, s = 0;scanf("%d", &x);while (x>0){r = x ...

  6. Java黑皮书课后题第8章:*8.2(求矩阵对角线元素的和)使用下面的方法头编写一个方法,求n*n的double类型矩阵中主对角线上所有数字的和。编写一个程序,读取一个4*4的矩阵,显示主对角线和

    *8.2(求矩阵对角线元素的和)使用下面的方法头编写一个方法,求n*n的double类型矩阵中主对角线上所有数字的和.编写一个程序,读取一个4*4的矩阵,显示主对角线和 题目 题目描述与运行示例 破题 ...

  7. Java黑皮书课后题第8章:*8.1(求矩阵中各列数字的和)使用下面的方法头编写一个方法,求矩阵中特定列的所有元素的和。编写一个测试程序,读取3*4矩阵,显示每列元素的和

    *8.1(求矩阵中各列数字的和)使用下面的方法头编写一个方法,求矩阵中特定列的所有元素的和.编写一个测试程序,读取3*4矩阵,显示每列元素的和 题目 题目描述与运行示例 破题 代码 题目 题目描述与运 ...

  8. Java黑皮书课后题第7章:7.10(找出最小元素的下标)使用下面的方法头编写一个方法,求出一个整数数组中的最小元素下标。编写测试程序,提示用户输入10个数字,调用这个方法返回最小值的下标(多个则最小

    7.10(找出最小元素的下标)使用下面的方法头编写一个方法,求出一个整数数组中的最小元素下标.编写测试程序,提示用户输入10个数字,调用这个方法返回最小值的下标(多个则返回最小的下标) 题目 题目描述 ...

  9. Java黑皮书课后题第7章:7.9(找出最小元素)使用下面的方法头编写一个方法,求出一个整数数组中的最小元素。编写测试程序,提示用户输入10个数字,调用这个方法返回最小值,并显示这个最小值

    7.9(找出最小元素)使用下面的方法头编写一个方法,求出一个整数数组中的最小元素.编写测试程序,提示用户输入10个数字,调用这个方法返回最小值,并显示这个最小值 题目 题目描述与运行示例 破题 代码 ...

  10. 给定一个数组,求如果排序之后,相邻两数的最大差值,要求时间复杂度O(N),且要求不能用非基于比较的排序。

    给定一个数组,求如果排序之后,相邻两数的最大差值,要求时间复杂度O(N),且要求不能用非基于比较的排序. import java.util.Arrays;public class MaximumDif ...

最新文章

  1. captura录屏发生了一个错误_录屏教程的方法有哪些?学会这两种轻松搞定
  2. 简单探索MNIST(Softmax回归和两层CNN)-Tensorflow学习
  3. Bootstrap的datatable控件
  4. linux随机自启命令,linux设置开机自启动
  5. SAP Fiori Elements 公开课第一单元概要介绍
  6. php post aspx,Login/LoginPost.aspx.vb 文件 LoginPost.aspx
  7. java检索txt文本_lucene索引word/pdf/html/txt文件及检索(搜索引擎)
  8. Centos 6.5-yum安装出现错误解决方案
  9. 洞穴辐射(radiation)
  10. MySQL数据库创建表格,及增删改查的综合使用
  11. ASP.NET Core 和 EF Core 系列教程——入门
  12. 用ZeroTier搭建属于自己的虚拟局域网(VLAN)
  13. 计算机组成原理 静态随机存储器实验,计算机组成原理静态随机存储器实验
  14. kafka mysql 迁移,kafka迁移数据目录
  15. k8s 存活检查与就绪检查
  16. 【无标题】Ds1302驱动代码编写并在Lcd1602液晶显示
  17. 什么是etcd及其原理和应用场景
  18. 1047: 阿姆斯特朗数
  19. 安徽大学2021计算机考研专业课题型,安徽大学电子信息工程学院2021研究生入学考试科目调整通知...
  20. 牛客网wannafly挑战赛13-D(贪心)

热门文章

  1. 外国知名大学开放课程网址
  2. 前方高能!Netflix推出《怪奇物语》VR体验
  3. camera具体曝光时间readout时间出图时间
  4. 统计学基础--假设检验
  5. div可拖拽移动js方法
  6. 这样做,你的面试成功率将达到 90%
  7. 电脑小技巧:关于修复只能看无法拖…
  8. python编程代码-几个Python小案例,爱上Python编程!
  9. matlab 求三维质心,如何计算三维质心?
  10. 中国银行软件中心信息技术岗(北京 )面试