问题描述:

有16瓶药水,其中一瓶有毒,一只小白鼠喝过之后,一天之后会死亡,要求一天后,至少多少只小白鼠,可以找出有毒药水。


问题解决:

这个问题很经典,然而网上多是二进制转十进制思想。

我在这里尝试用一分为二的逻辑,测试出这瓶毒水来。

我在这里画图,吨吨吨表示小白鼠喝下了药水。

  药水1 药水2 药水3 药水4 药水5 药水6 药水7 药水8 药水9 药水10 药水11 药水12 药水13 药水14 药水15 药水16
小白鼠1

吨吨吨

吨吨吨 吨吨吨 吨吨吨 吨吨吨 吨吨吨 吨吨吨 吨吨吨                
小白鼠2 吨吨吨 吨吨吨 吨吨吨 吨吨吨         吨吨吨 吨吨吨 吨吨吨 吨吨吨        
小白鼠3 吨吨吨 吨吨吨     吨吨吨 吨吨吨     吨吨吨 吨吨吨     吨吨吨 吨吨吨    
小白鼠4 吨吨吨   吨吨吨   吨吨吨   吨吨吨   吨吨吨   吨吨吨   吨吨吨   吨吨吨  

显然,只有喝了药水的小白鼠才有死的可能性。

因此,如果哪只小白鼠死了,它只能是因为吨吨吨了毒药水。

如果小白鼠没死,说明喝的药水没有毒,可以排除。

一只一只筛选。

直到锁定有毒的那一瓶。

四只小白鼠的死亡状态的那一列,对应了有毒的药水。

小白鼠喝毒水问题(一分为二的思想)相关推荐

  1. 小白鼠喝毒水的问题。

    有1000瓶水,其中有一瓶有毒,小白鼠只要尝一点带毒的水24小时后就会死亡,至少要多少只小白鼠才能在24小时时鉴别出哪瓶水有毒? 这是一道很经典的面试题目,先说解题方法吧,2^n >= 1000 ...

  2. 用小白鼠试验毒水问题

    问题一:8瓶水,其中一瓶有毒,问要找出有毒的水,你至少要尝试几次?(前提是毒不死人的) 问题二:还是这个题目,另外提供一群小白鼠,现在要你同时给N只小白鼠喝水,问至少需要几只小白鼠能一次性找出毒水? ...

  3. 笔试加分题:有16瓶水,其中只有一瓶水有毒,小白鼠喝一滴之后一小时会死。请问最少用() 只小白鼠,在1小时内一定可以找出有毒的水?

    原题: https://www.nowcoder.com/questionTerminal/a09c0eecbf684b0cba2ad0be32b7988e?orderByHotValue=1& ...

  4. 算法,16瓶水,有一瓶有毒,假设一只小白鼠喝一滴水,一个小时后会死亡,一个小时找出那瓶有毒的水至少需要几只小白鼠?

    首先16瓶水,编号0000,0001-1110,1111.然后让第一只小白鼠喝最低位为1的水,第二只小白鼠喝次最低位为1的水,第三只小白鼠喝第三位为1的水,第四只小白鼠喝最高位为1的水.一个小时后看小 ...

  5. LeetCode 458. Poor Pigs--智力题「小白鼠试毒」--C++,Python解法

    题目地址:Poor Pigs - LeetCode There are 1000 buckets, one and only one of them is poisonous, while the r ...

  6. 智力题------小白鼠试毒问题

    问题描述 有1000瓶水,其中有1瓶是有毒的.小白鼠喝了有毒的水之后24个小时就会死亡,问最少需要多少只小白鼠进行实验,才能在24小时内检测出哪瓶水有毒? 问题分析 如果没有时间限制的话,我们只要让一 ...

  7. (小白鼠喝药问题)1000瓶药水,其中有一瓶是有毒的,如何找出有毒的药水?

    问题描述 有 1000 瓶药水,但是其中有一瓶是有毒的,小白鼠只要喝了任意剂量的药水,24小时内就会死掉!请问,要在24小时内找出有毒的药水,最少需要多少只小白鼠? 解答 至少需要10只. 分析 1. ...

  8. 1000桶水,其中一桶有毒,猪喝毒水后会在15分钟内死去,想用一个小时找到这桶毒水,至少需要几头猪?具体该如何实现方法讲解

    对于此问题,一个思路是通过对问题分解: 首先一个猪在一个小时内的状态可以分为5种: 一.0分钟喝水,15分钟死去 二.15分钟活着再喝水,30分钟死去 三.30分钟活着再喝水,45分钟死去 四.45分 ...

  9. 1000瓶毒药,小白鼠测毒问题

    1000瓶药有1瓶有毒,如果小白鼠服用有毒的药,则24小时后死亡.现在需设计一种策略,使用尽可能少的小白鼠,在24小时内找出有毒的药. 如果用最普通的二分,第一只喝1-500,根据生存情况可以继续进行 ...

最新文章

  1. 网易云课堂解析_网易云课堂课程下载教程
  2. 深入理解JVM(一)编译openJDK
  3. Java项目出现的问题01----学习
  4. 前嗅ForeSpider教程:如何创建新任务
  5. 安全可靠国产系统下的应用怎么搭建?
  6. 【转】继承过程中 父类子类的 字段方法 内存分配 (非java语言)
  7. 第49课 大大大(纯小数变整数) 《小学生C++趣味编程》
  8. 与Win8之磁盘活动时间100%斗争心得
  9. Angular2 初识
  10. Python学习Day7
  11. java项目文档管理_基于jsp的文档管理系统-JavaEE实现文档管理系统 - java项目源码...
  12. 万字长文带你回顾Java集合框架
  13. 关于计算流体力学,你知道多少?
  14. linux中21个中级命令
  15. 洛谷----P3717 [AHOI2017初中组]cover
  16. 用C 制作含万年历的台历(2009年样张)之1
  17. 维生素C对免疫力有什么影响?
  18. 寻找复杂背景下的物体轮廓 (从禾路的博客园整理学习)
  19. 利用java统计每天用户升级手机App信息
  20. 中医是如何辩证出脾胃湿热的?

热门文章

  1. 关于LINUX系统netterm终端登陆乱码问题。
  2. ibm服务器有哪些型号,IBM服务器各个机型所对应ServerGuide引导光盘.doc
  3. java18(MySQL JDBC)
  4. 学生免费申请JetBrains许可
  5. RuntimeError: cuda runtime error (8) : invalid device function at /pytorch/torch/lib/THC/generic/THC
  6. KMS11激活Window系列
  7. 论文阅读笔记五十:CornerNet: Detecting Objects as Paired Keypoints(ECCV2018)
  8. 为什么你得不到 90 度的温暖
  9. 西北农林科技大学接口技术设计性实验一——8255并行接口实验
  10. 实时操作系统(RTOS)