智力题之【老鼠吃毒药问题】
- 毒药问题:
大家应该都听说过这个老题目:有 1000 个一模一样的瓶子,有 999 瓶是普通的水,有一瓶是毒药。任何喝下毒药的生物都会在一星期之后死亡。现在,你只有 10 只小白鼠和一星期的时间,如何检验出哪个瓶子里有毒药?
这个问题的答案也堪称经典:把瓶子从 0 到 999 依次编号,然后全部转换为 10 位二进制数。让第一只老鼠喝掉所有二进制数右起第一位是 1 的瓶子,让第二只老鼠喝掉所有二进制数右起第二位是 1 的瓶子,等等。一星期后,如果第一只老鼠死了,就知道毒药瓶子的二进制编号中,右起第一位是 1 ;如果第二只老鼠没死,就知道毒药瓶子的二进制编号中,右起第二位是 0 ⋯⋯每只老鼠的死活都能确定出 10 位二进制数的其中一位,由此便可知道毒药瓶子的编号了。
示意图:
假设有8个瓶子,里面只有一瓶是毒药,外观与其他7瓶一致,老鼠吃下毒药后1个小时会死亡,问要多少只老鼠才能够才一个小时内找出哪一瓶是毒药?具体怎么操作?
一只老鼠有两种状态:1.生存、2.死亡
2^3 = 8,所以用3只老鼠就可以
具体怎么操作呢?
Step1:首先用0-7把8个瓶子编号,然后把10进制的编号转换为二进制数
Setp2:把三只老鼠分别编号为1、2、3,编号为1的老鼠吃上二进制位第一位为1的编号的毒药,编号为2的老鼠就吃上二进制位第二位为1的毒药,编号为3的老鼠就吃上二进制位第三位为1的毒药,然后毒药分配就如下
编号1老鼠(1-3-5-7)、编号2老鼠(2-3-6-7),编号3老鼠(4-5-6-7)
!假设编号为5(101)的瓶子有毒
下面分析结果:
如果1号老鼠死了(老鼠1),则表明毒药存在于编号二进制中第一位为1的瓶子,那么毒瓶子的编号为(XX1),X表示尚未确认
然后分析第二只老鼠,如果第二只老鼠(老鼠2)没死,那就说明毒药瓶子不存在于编号二进制中第二位为1的瓶子,即毒药编号为(X01)
最后分析第三只老鼠,如果老鼠3死了,那就表名毒药存在于编号二进制位中第三位为1的的瓶子之中,即编号为(101)
最后得出结论:编号为101的瓶子有毒
假如三只老鼠都没有死亡,则表明有毒的瓶子是0号瓶子
智力题之【老鼠吃毒药问题】相关推荐
- 智力题------扔硬币吃苹果
问题描述 两个人仍一枚硬币,规定仍到正面可以吃苹果,请问先扔硬币的人吃到苹果的概率有多大? 思路 对于先仍硬币的人, 其第一轮吃到苹果的概率是:1/2 第二轮吃到苹果的概率是:1/2^3 第三轮吃到苹 ...
- 消灭老鼠c语言题目,老鼠智力题-关于老鼠的智力题-关于老鼠的话题-33IQ
鬼骧的记事簿(杂) 习惯性的在这时候点开33iq的网站. 据说12.00时会有很多灵感.恐惧是什么呢?不禁这么想到. 鬼?死亡?似乎都不恐怖.毕竟如果不代入角色够深的话是没法体会到的吧. 老旧的风扇发 ...
- 面试真题:经典智力题最详汇总
前言 同学们只要掌握了整理的这些智力题解答思路,以后面试再遇到智力题,一可以嘎嘎乱杀,如果不能那你过来把我的头打歪. 秋招不是要来了嘛,需要面试技巧的朋友点--[思维导图]--即可! 1. 掰巧克力问 ...
- 数值分析类智力题(IT产品类笔面试题型真题分析)
导读: 1.老鼠与毒药问题 2.海盗分金问题 3.坏硬币问题/称球问题 4.跳棋问题 5.疯狗/帽子问题 6.三个宝盒的概率问题 7.分金条问题 ...
- 【每日一道智力题】之 药瓶毒鼠鼠
题目: 有1000个一模一样的瓶子,其中有999瓶是普通的水,有1瓶是毒药.任何喝下毒药的生命都会在一星期之后死亡.现在你只有10只鼠鼠和1个星期的时间,如何检验出哪个瓶子有毒药? 这是一道经典的面试 ...
- 微软Google等互联网公司经典面试智力题和解答
一.微软58题 A.逻辑推理 1.你让工人为你工作7天,给工人的回报是一根金条.金条平分成相连的7段,你必须在每天结束时给他们一段金条,如果只许你两次把金条弄断,你如何给你 的工人付费? 2.请 ...
- 面试总结+网上查阅的智力题
笔试了这么多家公司,每次笔试都过了,可是总是死在面试上,总结了很多原因: 1.其中有很多问题是随机性的,没有做好准备,所以要学会随机应变的能力,嘴比较笨,还是多学学良好的沟通,学会与人交流,应变的能力 ...
- 经典面试智力题和解答
一.微软58题 A.逻辑推理 1.你让工人为你工作7天,给工人的回报是一根金条.金条平分成相连的7段,你必须在每天结束时给他们一段金条,如果只许你两次把金条弄断,你如何给你 的工人付费? ...
- 软件测试常见的智力题
智力题1(海盗分金币)- - 在美国,据说20分钟内能回答出这道题的人,平均年薪在8万美金以上. 海盗分金币 5个海盗抢得100枚金币后,讨论如何进行公正分配.他们商定的分配原则是: (1)抽签确定 ...
最新文章
- Linux: debian/ubuntu下安装Neo4j
- Linux入门第四集!Jar包的入门、使用、部署!怎么打Jar包?
- 关于64位WIN7下正确建立JAVA开发环境(转
- 阅读代码工具:Visual Studio Code
- springboot yml里面配置list 日期日期格式的postMen 发送json
- 09-排序1 排序 (25 分)
- iOS内存管理系列之一:对象所有权与引用计数
- Python中的各种if语句(if条件判断、if...else、if...elif...else、if...else嵌套)
- rdd与mysql表 join_Spark 之RDD
- Linux学习(5)Linux用户管理、用户组管理
- NYOJ题目91-阶乘之和
- mvn 命令指定jdk版本
- DBSCAN聚类算法实用案例
- Java工程师的成长之路
- 应用程序开发选择工具应注重运行效率还是易用性
- ppt转换图片及有密码情况处理
- 爬虫实践---Scrapy-豆瓣电影影评深度爬取
- 优恩对比分析GDT陶瓷气体放电管与TSS放电管
- Oracle数据分析助力精准营销-客户画像 举例
- 服务器Ubuntu常用命令汇总
热门文章
- 软件测试面试复习题(一)
- [翻译]Learning Multiple Tasks with Deep Relationship Networks
- 全球首个人工智能实验床“泰”在深圳发布
- mysql 人名用什么类型_MySQL 基础(二)
- 关于ssh登录时卡顿30s左右的问题调试处理
- console.log()用法
- 浅谈C语言中数组理解
- 百度云盘BT服务器,百度网盘磁链、BT离线停用,官方称服务器优化,非永久下线...
- CVPR 2022 | Mobile-Former来了!微软提出:MobileNet+Transformer轻量化并行网络
- Ubuntu(Linux)系统截图软件推荐flameshot