瓶子破碎的最高安全楼层
我辈喜学剑,十年居寒潭。一朝斩长蛟,碧水赤三月
Description:
有n层的楼,有两个强度相同的瓶子,设计一个办法来检测该种瓶子的可以承受的最高楼层。
如果,瓶子从第x楼扔下后不会碎,从第x+1层扔下来之后碎了,则其最高承受楼层为x。瓶子不碎的话可以捡起来继续扔。
方法1:
interview时临时想起的,脑子中冒出来了快慢指针的思想,于是想出来该种方法,思路是对的,但是不是最好的。 见多识广的重要性阿。
记瓶子的最高承受层为Max;
每隔两层扔一次,例如,第一个瓶子从1层扔,第二个瓶子从4层扔,有以下结果:
#第1瓶子碎了,则Max=1
#第1瓶子没碎,第2个瓶子碎了,则,Max=2或3,再扔一次检测这两层即可;
#第1瓶子没碎,第2个瓶子没碎,则,从第7层开始扔;
最差时间复杂度: n/4 *2 +1 --->o(n)
方法2:
先扔一个瓶子,从底层往上, 每隔 n^(1/2),扔一次,如果某次扔下后碎了,则开始用另一个瓶子来检测n^(1/2)个楼层即可。
举例:
n=100, n^(1/2)=10, 最坏情况是,先扔9次,10层,20层,... , 100层, 到100层时才碎,然后,用另一个瓶子检测91-99这几个楼层,即从第91层开始扔,最坏是扔到99层才碎。 则共扔了10+9次。
时间复杂度:
n / ( n^(1/2) ) + n^(1/2) -1 = 2 * n^(1/2) - 1 ------->o(n^(1/2))
瓶子破碎的最高安全楼层相关推荐
- 玻璃破碎玻璃破碎机玻璃回收厂
玻璃破碎玻璃破碎机玻璃回收厂 玻璃破碎机 提供玻璃破碎机出售,这也叫玻璃破碎机,我们还生产玻璃研磨厂的玻璃回收和玻璃制造的dustry.引进玻璃制造(矿物粉碎的玻璃等行业)和玻璃制品的回收处理的过程. ...
- 两个玻璃球和100层楼的问题
(http://hi.baidu.com/ajdo/blog/item/f0c292ed8cf6b05d78f055ba.html) 给你两个玻璃球,有一座100层的大厦,用最少的实验次数找出临界层, ...
- 【算法】逻辑题算法题语言特性(集合贴1)
为什么80%的码农都做不了架构师?>>> BX网Email过来的安卓笔试题 1.商品摆放问题 在网上搜了下,最多的是基于Aprior算法的解决方案,还搜到论坛帖子,里面有人说这 ...
- 《脱颖而出——成功网店经营之道》一2.1 定位
本节书摘来异步社区<脱颖而出--成功网店经营之道>一书中的第2章,第2.1节,作者: 何小健 责编: 赵轩, 更多章节内容可以访问云栖社区"异步社区"公众号查看. 2. ...
- T:玻璃瓶样品强度测试
算法题目如下: 参考解答: a.采用分治策略. 将n 个横档分成n^1/2 组,每组n^1/2 个横档,第k 组为(k-1)n^1/2 +1 到 (k-1)n^1/2+n^1/2 的横档.从下到上检查 ...
- 100层楼2个鸡蛋,测试其最低破碎楼层问题
原文章链接 http://www.cnblogs.com/yangai/p/5391533.html http://www.tuicool.com/articles/NzUNJr http://blo ...
- 面试算法03-高楼扔球求临界破碎楼层
且看题: 有100层楼,已知从某层扔下玻璃球会碎,给你两个玻璃球,请用最优策略实验出临界的破碎楼层 注意题,是给出最优实验策略,我们可不能拿一个小球从一层开始扔,然后一层一层往上加,这样的话最坏的情况 ...
- 100层楼2个鸡蛋求最低破碎楼层与信息论
100层楼2个鸡蛋求最低破碎楼层经典算法可以参考 http://blog.sina.com.cn/s/blog_6c813dbd0101bh98.html 这篇文档我们从更高的视角-信息论的角度去看 ...
- 2017年完美世界校招笔试题,从n层大楼往下扔m颗玻璃珠确定珠子破碎的临界楼层
这道题可以搜索google扔玻璃珠笔试题以及腾讯2017的校招笔试也有一道这样的题,不同的是,以上的题中只是用了两颗玻璃珠,而这里是m颗玻璃珠: 不过,同样是扔珠子,所以思路都是一样,只不过变得更有普 ...
最新文章
- LeetCode Course Schedule II(拓扑排序)
- node.js微博案例第二讲
- 会计用计算机很快是,40个超实用电脑快捷键,老会计都在用!
- oracle服务器cpu 100,Oracle数据库服务器CPU一直100%怎么处理-sql优化方面
- 文献解读-物理信息深度学习(PINN)
- 4.2 NI-USRP驱动安装与检测
- logstash全量导入es
- 书籍折页是什么效果_书籍折页什么样 - 卡饭网
- 捋一捋dubbo配置
- 查看kafka的版本
- 计算机数据的发展阶段,计算机数据存储介质的发展阶段
- iOS为什么获取不到设备的DeviceToken
- 数据库安装时需要更新以前的Visual Studio 2010实例状态失败-----亲测可行
- 安装部署docker
- Grbl开源固件的官方介绍使用说明【翻译】
- JDK8新特性知识点总结
- Java项目:游戏点评系统(java+SSM+JSP+JavaScript+mysql)
- 如何屏蔽百度广告及百度热点
- python之 ffmpeg给mp4视频添加字幕
- Exchange Server 2016 RTM快速部署指南
热门文章
- Logistic Regression(1)
- indesign java_InDesign必杀技,分分钟秒出方案排版(附ID排版模板)
- 【互联网品读】京东,真的服了,东哥走火入魔了?全员绩效合同
- 微信小程序获取页面元素高度_微信小程序之动态获取元素宽高
- 二分查找算法(非递归)
- 331_S32K144 CAN FIFO初步
- HDLBits Bulid a circuit from a simulation wavefrom 系列
- 映客都是互刷礼物吗_一姐负气出走花椒,映客正在发生一场大规模主播内讧事件.........
- 工程师必须了解的IQ信号和调制知识
- phpexcel 读取数据