信息论之老鼠试毒问题

前言

最近看到网友讨论一个关于信息论的面试题,原题如下:

1000瓶酒其中1瓶有毒,10只老鼠找出毒酒,需要注意每只老鼠只可以试1次?

当然这个题目也有变种:

1000瓶酒其中1瓶有毒,使用老鼠来试毒,需要注意每只老鼠只可以试1次,最少需要多少只老鼠?

虽然,题目不同,实际上还是同样的原理。这个题目在网上有很多的解答,可是我觉得讲解的不够通俗易懂,所以准备按照自己的理解来讲解一下原理

如何使用老鼠试毒讲解

首先原题目的问题规模实在太大,所以我选择改为8瓶酒其中1瓶有毒,3只老鼠找出毒酒。这里改为8选1使用3只老鼠是因为2^3=8,原理下面会讲。

  1. 首先我们给每瓶酒进行编号,从0开始编号,并转化为二进制:
酒瓶编号 0 1 2 3 4 5 6 7
二进制值 000 001 010 011 100 101 110 111
  1. 给每只老鼠进行编号,分别为1、2、3,根据编号,喝酒瓶编号二进制值对应位数为1的酒的混合液,如下所示:
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值