2021-03-23

    ## 关于500桶酒至少用多少只老鼠的题的思考##

题目描述:有500桶酒,其中一桶有毒,喝了毒酒后,毒性会在一周之后发作,问至少要多少只🐭,可以在一周之后找出毒酒(老鼠越少越好,时间为一个周)
我的思考:
这道题一开始没做出来,没有思路,不知道如何解决,看了解析后,写下一点自己的想法。
要用最少的老鼠,既要用老鼠表示出更多的 酒的毒性的情况;老鼠到后面就只会有两种情况:中毒,没中毒;(这里其实就可以联系二进的 0 1),而对酒,也只有两种情况:有毒或没有毒(这里也可以联系二进制,即用0 1表示两种状态)下面讲讲如何解题
将500桶酒编号,用二进制序列来进行编号,因为有500桶酒,而2^9=512;9位二进制的111111111表示511;所以9个二进制的1就够了。
将0——500的酒编号

1 。 0 0000 0001
2 。 0 0000 0010
~~~~~
499。 1 1111 0011
500。 1 1111 0100
而找到老鼠,分别对这里面的二进制位,如第一只老鼠对应第一个二进制位,以此类推,每只老鼠要喝掉自己所在二进制位二进制编号出现1的酒。所以只需9只老鼠。如果第二只 ,第四只老鼠死了,其它没死,则毒酒的二进制序列位 0 0000 1010,所以第10桶酒是毒酒。
Summary:
关于这类问题,将它转换成一类我们熟悉的问题很重要,这个问题转换成二进制来处理就很巧妙,反正我是没有想到。转换问题的能力还是很差。(第一次写博客,记录一下每日的学习,希望能有很多收获)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值