鉴别毒水问题
来源:互联网 发布:jre windows x64.exe 编辑:程序博客网 时间:2024/05/16 23:53
一、有1000瓶水,其中有一瓶有剧毒(假设哪怕一个毒药分子在里面也能致命),现在给你10只小狗在24小时内通过小狗试药的方式鉴定出来哪瓶药有毒。
情况1:假设小狗服药后2小时内即可判断是否中毒,鉴别方案有哪些?
情况2:假设小狗服药之后20小时才能判断是否中毒,鉴别方案又是什么?
对与情况1,由于要求24小时内得出结果,因此最多可以等待12次试验结果,因此可以采用简单的二分查找的方法找到有毒的水。
对于情况2,由于20小时后才能判断是否中毒,因此只能等待1次试验结果。这个问题的模型就是用10位二进制位可以表示1000(二进制表示111110100)内的一个数字.我们用8瓶水说明情况(要用3个小白鼠做实验哦)。
000=0
001=1
010=2
011=3
100=4
101=5
110=6
111=7
一位表示一个老鼠,0-7表示8个瓶子。也就是分别将1、3、5、7号瓶子的药混起来给老鼠1吃,2、3、6、7号瓶子的药混起来给老鼠2吃,4、5、6、7号瓶子的药混起来给老鼠3吃,哪个老鼠死了,相应的位标为1。如老鼠1死了、老鼠2没死、老鼠3死了,那么就是101=5号瓶子有毒。
说个简单的办法 将8瓶水矩阵来摆 分别编号12345678
123
456
78
一二三老鼠 分别横向喝 即一老鼠喝123的混合 二老鼠喝456的混合 三老鼠喝78的混合
四五六老鼠 分别纵向喝 即四老鼠喝147的混合 五老鼠喝258的混合 六老鼠喝36的混合
24小时过后 死老鼠所对应的直线交点就是 两瓶毒药位置
关于毒药问题 还可以用二进制转化十进制的办法处理 但是那种比较适合在一瓶毒药情况下
用到的白鼠数量较少
但是用矩阵的办法可以无视毒药数量 完全检验出毒药
- 鉴别毒水问题
- 小白鼠检验毒水问题
- 一般性假币称重鉴别问题
- 毒
- 毒
- 毒...
- 毒......
- 毒
- 有1000瓶水,其中有一瓶有毒,小白鼠只要尝一点带毒的水24小时后就会死亡,至少要多少只小白鼠才能在24小时时鉴别出那瓶水有毒?
- 有1000瓶水,其中有一瓶有毒,小白鼠只要尝一点带毒的水24小时后就会死亡,至少要多少只小白鼠才能在24小时时鉴别出那瓶水有毒?
- 有1000瓶水,其中有一瓶有毒,小白鼠只要尝一点带毒的水24小时后就会死亡,至少要多少只小白鼠才能在24小时时鉴别出那瓶水有毒?
- 用小白鼠鉴别有毒药水问题
- 用小白鼠鉴别有毒药水问题
- 串口RS232和RS485鉴别问题
- 小白鼠验证毒药水的问题
- 线性鉴别分析(LDA)之二分类问题
- zzulioj--1716--毒(模拟水题)
- 处理Foxmail垃圾邮件数据文件被杀毒软件删除问题
- 黑马程序员——Java基础查找算法:顺序查找和二分查找
- Synchronized
- 统计字符次数
- 体验OpenGL新版本
- android菜鸟之button事件的三种方式
- 鉴别毒水问题
- hdu 3001 Travelling 三进制状压Dp
- 空杯心态,重新出发
- (stl)Valid Pattern Lock
- [Practical.Vim(2012.9)].Drew.Neil.Tip28 学习摘要
- Python学习之路18——控制语句,迭代器, 列表解析
- swift学习心得
- WPF绑定数据源之RelativeSource
- 《追风筝的人》