100层高楼摔2个鸡蛋的问题?

一幢大楼共计100层,某种类型的鸡蛋从某一楼层及其以上楼层摔下来时会被打破,从该层楼(即临界楼层)以下楼层摔下该鸡蛋,鸡蛋不会出现破损。现给你2个完全一样的该种类型的鸡蛋,问:如何通过这2个鸡蛋找到该临界楼层?

解:

  关键:每一层都有可能是临界层,且可能性相同。

  假设第一个鸡蛋从x层摔下破了,最多还需要x-1次尝试,一共x次;

  第一个鸡蛋没破,再从x+x-1层摔下,如果破了,最多还需x-2次尝试,一共x次;

  第一个鸡蛋没破,再从x+x-1+x-2层摔下,如果破了,最多还需x-3次尝试,一共x次;

  ……

  这样无论那一层楼为临界楼,都最多只需要x次得出。

x+x-1+……+1=(x+1)*X/2>=100,x=14.

时间: 2024-10-21 22:34:16

100层高楼摔2个鸡蛋的问题?的相关文章

100层高楼摔2个鸡蛋的问题

一幢大楼共计100层,某种类型的鸡蛋从某一楼层及其以上楼层摔下来时会被打破,从该层楼(即临界楼层)以下楼层摔下该鸡蛋,鸡蛋不会出现破损.现给你2个完全一样的该种类型的鸡蛋,问:如何通过这2个鸡蛋找到该临界楼层? 答:不能用二分法:如果一个鸡蛋在50层碎了,另一个就要从最下面一层一层往上试. 我们大胆地估计一下,如果把100分成10段,那么要找到临界楼层,我们大致最多需要20次测试,我们通过2,12,22,32,...,不断地试探,确定了某个区间,就进入该区间逐个测试.试看:如果临界楼层在10层一

你拿着两个鸡蛋站在 100 层的大楼上。鸡蛋或许结实到从楼顶掉下也不会摔破。或许很易碎,在一楼摔下就破碎。

你拿着两个鸡蛋站在 100 层的大楼上.鸡蛋或许结实到从楼顶掉下也不会摔破.或许很易碎,在一楼摔下就破碎.请问最少试验多少次可以确保找出鸡蛋不会被摔碎的最高楼层? 注意:1.只有两个蛋2.确保找出 一开始,我们先用猜的吧:我猜测,鸡蛋不会被摔碎的最高楼层是27层,于是从27层摔了一个鸡蛋下去.结果有两种:1.鸡蛋碎了.那么,鸡蛋不会被摔碎的最高楼层,在第1层至第27层之间.此时只剩下一个蛋了.为了确保找出,这个蛋,就不能猜了.因为,万一又猜错了,就没有鸡蛋可以试验,也就无法确保找出鸡蛋不会被摔碎

100层的大楼,用2个玻璃球,确定在那层丢下玻璃球刚好会碎?【?】

有一栋100层高的大楼,给你两个完全相同的玻璃球.假设从某一层开始,丢下玻璃球会摔碎.那么怎么利用手中的两个球,用什么最优策略知道这个临界的层是第几层??? 解答如下: http://blog.csdn.net/lzshlzsh/article/details/5951447 投掷次数分布不均.按最坏情况估计,这种方法就多做了几次.为了使最坏情况的投掷数最小,我们希望无论临界段在哪里,总的投掷数都不变,也就是说投掷数均匀分布.      接下来的解决方案就很容易想出了:既然第一步(确定临界段)的

『HTML5挑战经典』是英雄就下100层-开源讲座(二)危险!英雄

本篇为<『HTML5挑战经典』是英雄就下100层-开源讲座>第二篇,需要用到开源引擎lufylegend,可以到这里下载: 下载地址:http://lufylegend.googlecode.com/files/lufylegend-1.7.1.rar API文档:http://lufylegend.com/lufylegend/api 却说我们的英雄能顺利地从天而降了,不过丝毫没有悬念,他一定会被摔死的,因为还没有跳板出现.我每次路过时都看到我们的英雄是边下降边大叫:help! help!然

【编程马拉松】【026-是男人就下100层】

[编程马拉松算法目录] [026-是男人就下100层][工程下载>>>] 1 题目描述 相信大家都听说过"是男人就下100层"系列游戏,游戏中包括多个长度和高度各不相同的平台,地面是最低的平台,高度为零,长度无限. 一个男人在开始的时候从高于所有平台的某处开始下落,它的下落速度始终为1米/秒.当他落到某个平台上时,游戏者选择让他向左或向右跑,跑动的速度也是1米/秒.当他跑到平台的边缘时会继续下落.要求每次下落的高度不能超过MAX米,不然就会摔死,游戏也会结束. 请帮忙

是男人就下100层【第四层】——Crazy贪吃蛇(2)

在上一篇<是男人就下100层[第四层]--Crazy贪吃蛇(1)>中我们让贪吃蛇移动了起来,接下来我们来实现让贪吃蛇可以绕着手机屏幕边线移动并且可以改变方向 一.添加状态并修改代码 首先我们来用另外一种方式实现上一版本中的刷新界面,在Crazy贪吃蛇(1)中我们自定义了一个线程每隔1s钟刷新界面,在线程中我们使用了postInvalidate()方法通知主线程重绘界面,我们打开View的源代码看看到底是如何通知主线程的,原代码如下: public void postInvalidate(int

是男人就下100层【第五层】——2048游戏

前言: 在"阳光小强"的实战系列博文<是男人就下100层>的上一层我们一起从零开始完成了我们自己的贪吃蛇游戏--CrazySnake,可能很多朋友还不过瘾,那么我们今天就来玩一玩最近一直比较火的2048游戏,让大家再过一把瘾.由于"阳光小强"目前并没有从事Android的游戏开发工作,所以这些游戏的实现并不需要很专业的游戏开发知识,如果你有Android的基础就可以一起来参与进来共同完成这个游戏.有些朋友可能就会说"这些小游戏,会不会有点简单,

是男人就下100层【第五层】——2048游戏从源码到发布市场

上一篇<是男人就下100层[第五层]--换肤版2048游戏>中阳光小强对2048游戏用自己的方式进行了实现,并分享了核心源码,这一篇阳光小强打算将该项目的所有源代码公开并结合这个实例在这篇文章中介绍一下如何添加广告和实现分享功能. 最终运行效果如下(更多运行效果请看<是男人就下100层[第五层]--换肤版2048游戏>): 一.如何实现换肤 换肤的思路其实很简单,在ActionBar中添加菜单,当用户选择某一个皮肤后就将当前的皮肤状态修改并保存到SharedPreference中,

超多经典 canvas 实例,动态离子背景、移动炫彩小球、贪吃蛇、坦克大战、是男人就下100层、心形文字等等等

超多经典 canvas 实例 普及:<canvas> 元素用于在网页上绘制图形.这是一个图形容器,您可以控制其每一像素,必须使用脚本来绘制图形. 注意:IE 8 以及更早的版本不支持 <canvas> 元素. 贴士:全部例子都分享在我的 GayHub - https://github.com/bxm0927/canvas-special 尤雨溪个人主页炫彩三角纽带效果,点击还可变换 GitHub源码 . Demo演示 知乎登录注册页动态离子背景效果 GitHub源码 . Demo演