记一道智力测试题-老鼠喝毒酒

原文地址:记一道智力测试题-老鼠喝毒酒

题目:1000瓶酒中有1瓶毒酒,现有10只老鼠,老鼠饮用毒酒后7天后毒性才发作,第8天要卖了,求那是瓶毒酒?

一只老鼠喝酒后只有两种状态:死(0)、活(1),此时可考虑使用二进制方面内容。

10只老鼠可表示2的10次方个状态,也就是即1024个状态,其中2^0表示2的零次方,2^8表示2的8次方,可将10只老鼠编号分别设为2^0,2^1, 2^2, 2^3, 2^4, 2^5, 2^6, 2^7, 2^8, 2^9。

接下来就是对1000桶酒进行编号,从1开始,一直到 1000,任何一桶酒的编号都可分解为2的幂指数之和的形式,并且是唯一的,如第九桶酒9=2^0 + 2^3。

可让编号为2^0和2^3的两只老鼠去喝第九桶酒,如老鼠死去,则第九桶酒有问题,之后只需分别让不同的老鼠去喝不同的酒,最后只需看那几只老鼠死去,就可确认那桶酒有问题。

至此,本次分享就结束了,后期会慢慢补充。

以上仅为个人观点,不一定准确,能帮到各位那是最好的。

好啦,到这里本文就结束了,喜欢的话就来个三连击吧。

扫码关注公众号,获取更多优质内容。

记一道智力测试题-老鼠喝毒酒 

上一篇:HDU 6606 Distribution of books 二分答案+权值线段树优化dp


下一篇:Java顺序结构综合练习一之银行复利计息收益计算