【逻辑】500桶酒,其中1桶是毒酒,找毒酒
题目
500桶酒,其中1桶是毒酒;48小时后要举行酒会;毒酒喝下去会在之后的第23-24小时内毒死人;国王决定用囚犯来试酒,不介意囚犯死多少,只要求用最少的囚犯来测试出哪一桶是毒酒,问需要最少需要多少囚犯才能保证找出毒酒?
思路一
需要9个人
将500桶毒酒进行编号,并用二进制表示.得到000000000~111110100.
每个囚犯对应二进制的每一位,然后喝下对应位数为1的那个编号的毒酒
然后根据死亡的囚犯编号或者毒酒的二进制编码.
进而获得毒酒的编号.
如毒酒编号为350,那么二进制对应为101011110.难么囚犯234579会死亡.
思路二
需要两个人,因为23*23=529>500
将毒酒进行编号,并且每23桶作为一组,1~23;24~46…..
囚犯一每小时喝下每一组酒
囚犯二每小时喝下每一组中对应的酒,如第一小时喝下每组的第一桶酒.第二小时喝下每一组对应的第二桶酒.
然后根据死亡时间进行交叉查找
根据2人死亡计时和行、列交叉点即可找到那桶毒酒了。
如囚犯一34小时死亡,代表(34-23)组酒有毒,即231~253有毒.
囚犯二38小时死亡,代表每组的(38-23)号=15号有问题.
综合后即为231+15-1=245号酒有问题.
简单地说把500桶分成23行22列:
第一个囚犯每小时喝一行;
第二个囚犯每小时喝一列。
根据2人死亡计时和行、列交叉点即可找到那桶毒酒了。
【逻辑】500桶酒,其中1桶是毒酒,找毒酒相关推荐
- java国王毒酒答案,换换脑子500桶酒国王用囚犯找毒酒答案-500桶酒其中1桶是毒酒找毒酒答案最新版【附公式详解】-东坡下载...
烧下脑子,请诸位为国王出个主意:500桶酒,其中1桶是毒酒:48小时后要举行酒会:毒酒喝下去会在之后的第23-24小时内毒死人:国王决定用囚犯来试酒,不介意囚犯死多少,只要求用最少的囚犯来测试出哪一桶 ...
- java国王毒酒答案,500桶48小时国王囚犯答案解析-奥数500桶酒其中1桶是毒酒试题及答案【附原题】完整打包下载-东坡下载...
最近一道500桶酒的奥数试题让许多小伙伴感到为难,不知道答案到底是多少,小编为各位收集整理了奥数500桶酒其中1桶是毒酒试题及答案,为你详细解析,还有图文解答,想查看答案的小伙伴赶紧来下载吧! 奥数5 ...
- 有1000桶酒,其中1桶有毒.而一旦吃了,毒性会在1周后发作.现在我们用小老鼠做实验,要在1周内找出那桶毒酒,问最少需要多少老鼠.
有1000桶酒,其中1桶有毒.而一旦吃了,毒性会在1周后发作.现在我们用小老鼠做实验,要在1周内找出那桶毒酒,问最少需要多少老鼠. 很老的笔试题了. 答案是10只. 把十只老鼠看成二进制的位数,把酒桶 ...
- 1000桶酒中含两桶毒酒问题
链接毒酒问题中给出如下问题: 国王为10天后的生日宴会准备了1000桶酒,不幸的是,其中两桶被下了毒.为了确定两桶毒酒,有人提议用死刑犯试毒.毒的潜伏期为10天. 问:至少需要多少个死刑犯才能确保找 ...
- 1000桶酒中寻找一桶毒酒算法
有1000桶酒,其中1桶有毒.而一旦吃了,毒性会在1周后发作. 现在我们用小老鼠做实验,要在1周后找出那桶毒酒,问最少需要多少老鼠, 如何检测(老鼠的使用量越少越好,注意,毒性1周后才会发作,而且一周 ...
- 桶排序c语言,桶排序(Bucket Sort)的数组实现
桶排序的数组实现 桶排序Bucket Sort从1956年就开始被使用,该算法的基本思想是由E. J. Issac R. C. Singleton提出来. 桶排序(Bucket Sort)是迄今为止最 ...
- 高并发系统限流-漏桶算法和令牌桶算法
参考: https://www.cnblogs.com/xuwc/p/9123078.html http://www.cnblogs.com/LBSer/p/4083131.html https:// ...
- 流量控制算法——漏桶算法和令牌桶算法
一.写在最前 轰轰烈烈的双十二已经过去小半个月了,程序猿的我坐在办公桌上思考,双十二这么大的访问量,这群电商是怎么扛住的,接口分分钟会变得不可用,并引发连锁反应导致整个系统崩溃.好吃懒做的小编,被可怕 ...
- 限流算法之漏桶算法、令牌桶算法
限流 每个API接口都是有访问上限的,当访问频率或者并发量超过其承受范围时候,我们就必须考虑限流来保证接口的可用性或者降级可用性.即接口也需要安装上保险丝,以防止非预期的请求对系统压力过大而引起的系统 ...
最新文章
- Java语言实现插值查找
- python字符编码在哪里_快速入手Python字符编码
- iOS:Cocoa编码规范 -[译]Coding Guidelines for Cocoa
- 【kafka】kafka UnknownProducerIdException raised broker locate producer metadata producerId
- js 添加事件 attachEvent 和addEventListener 的用法
- 【转】详解JavaScript中的this指针
- 查询硬盘序列号(serialNumber),系统安装日期等
- 小程序去水印解析接口,短视频解析稳定API接口教程
- 基于DOI码的批量文献下载脚本
- RAID磁盘阵列数据恢复
- 【答读者问16】回测的时候,价格是使用哪一种复权方式(前复权、后复权与不复权)
- C# winform 右下角弹窗
- Airflow PythonOperator、BashOperator以及Xcom使用
- 【详细教程·本人亲测】解决win10家庭版系统C:\Users用户名中有中文,更改为英文的问题
- SpringSecurity自定义多Provider时提示No AuthenticationProvider found for问题的解决方案与原理(二)
- IE不能上网浏览的常见原因和解决方法
- C语言内存分配-附图详解,代码区、常量区、栈区、堆区.......
- go module安装本地离线包
- OUC2022秋软件工程第14小组作业
- 1228|如何用ALV输出完成SAP报表