关于1000桶水,其中一桶有毒,猪喝毒水后会在15分钟内死去,想用一个小时找到这桶毒水,至少需要几头猪?的问题

这是个概率学问题,在计算机中也是个进制问题,我看了网上一些关于这个问题的解答,感觉有的人说的并不清楚,或者感觉有的写解答的人自己都没太搞清楚,回答也不对,只是因为知道答案是5硬往上套.这个问题,首先判断用的是多少进制,这个根据猪在一小时内能有几种状态:

一.0分钟喝水,15分钟死去

二.15分钟活着再喝水,30分钟死去

三.30分钟活着再喝水,45分钟死去

四.45分钟活着再喝水,60分钟死去

五.60分钟还活着

有这五种状态,那么可以判断求解要用五进制,为什么用五进制,因为用五进制可以保证在1个小时结束后,一头猪至少能把一个五进制位置的数字的所有可能都判断掉(0,1,2,3,4),所以每一头猪它代表的不是猪,一个五进制的数字!

所以,至少需要几头猪?

那我们选的猪的数量,至少要保证这个位数的五进制数>1000!如果是4头猪,那么就代表能判定最多4位五进制,最大的4444转成十进制=624,所以答案是五头猪,因为五位五进制,最大的44444的五进制数,转成十进制是3124!

具体操作:我们把这1000头猪编号,按五进制编号,这样有1000个五进制数字.为了方便我们把猪编号1 2 3 4 5,代表五位五进制的五个位数,即某个X X X X X

0-15分钟,我们让1号喝1位都是0的桶的水,但是其他位数不能为0,比如10 ,110,3220...这种,让2号猪喝2号位置为0,其他位置不为0的桶的水....五号猪喝五号位0,其他位置不为0的水.(注意:我们这时并没有把所有的桶的水都喝完,也就是15分钟过去也可能没有猪死去!)

15-30分钟,假如有猪死去,比如一号猪死了,那么能确定这个五进制数的一号位是0,那么其余四头猪再喝水的时候,二号猪就喝2号位是1,1号位是零!其余位置不为1也不为0的水(因为345号位置的带零的数字都已经测过了),三号猪就喝3号位是1,1号位是0,其余位置不为1也不为0的水.4,5号猪以此类推.

假如没有猪死,那一号就喝一号位为1的其余位置不为1也不为0的水,二号位喝二号位为1,其余位置不为1也不为0的水,以此类推

30-45分钟  .....

一个小时后,我们就能确定这个五位数的五进制数五个位置的所有数字是多少了

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值