爬100层楼梯
有一个男孩和一个女孩他们住在第100层楼上,每天都是一起外出,一起回家。有一天大楼的电梯坏了,两个人却背着很重的包,经过商议他们决定走楼梯。当他们走到18楼的时候,他们很累,女孩尤其累,男孩就鼓励他,并且把女孩子的包也背到了自己的肩膀上,拉着女孩的手一起爬楼梯当他们走到20楼的时候,他们实在太累了,于是男孩说:&反正楼梯一般没人走,要不我们把包放在这里,等到电梯好了再下来拿?&女孩听了,表示同意,因为他们很累。于是他们把包放在了楼道里,男孩拉着女孩的手继续爬楼梯。在她们爬到25楼的时候,女孩累的不行了,于是男孩背起来女孩爬楼梯,女孩紧紧楼住男孩的脖子,把自己的体重完全交给了男孩。当他们爬到35楼的时候,女孩开始抱怨,为什么当初要爬楼梯,出去玩等到等到电梯好了再上楼也不错呀,男孩也是抱怨,他们之间开始吵架了。但是他们还在爬着楼梯。到40楼的时候他们的争吵已经很厉害了,男孩说女孩不好,女孩说男孩不好,但是他们还在一直爬楼梯。等到50楼的时候,他们已经不吵了,两个人已经不经常说话了,有时他们之间也就是眼神有交流,但是彼此却知道对方的意思。等到了60楼的时候,男孩子和女孩子互相搀扶着彼此,一步一步的爬着,脸上却有了甜蜜的微笑。等他们到达75楼的时候,他们已经累的不行了,但是男孩和女孩一直没有放开对方的手,他们一步一步的慢慢爬着。快到95楼的时候,他们已经筋疲力竭了,他们只有爬几步休息一会再爬,但她们的手一直牵着对方。终于到达了100楼,突然他们发现钥匙却放在了20楼的包里。此文章不知道有多少人可以看懂?这是董讲给我的,我稍加修改写了下来。知道这代表着什么意思吗?
分享这篇日志的人也喜欢
你若不离我便不弃
终于笑不出来了?
跟巨蟹贼有缘?
睡你麻痹起来嗨
热门日志推荐
人人最热标签
北京千橡网景科技发展有限公司:
文网文[号??京公网安备号?甲测资字
文化部监督电子邮箱:wlwh@??
文明办网文明上网举报***: 举报邮箱:&&&&&&&&&&&&
请输入手机号,完成注册
请输入验证码
密码必须由6-20个字符组成
下载人人客户端
品评校花校草,体验校园广场2013百度【算法】超难面试题:100层楼摔手机,什么时候坏 - 乔布简历
打开微信,扫描二维码
点击微信右上角,分享到朋友圈
一幢楼有100层,已知手机在其中某一层摔下就会坏,现在有两个一样的手机,请问,最少能摔几次保证一定找出那个极限的楼层值?(已知从101层掉下必坏)
小编插句嘴:
出题人你是不是没听说过诺基亚的威名?另外此题似乎可以这么答:
苹果手机用户:已知手机在一楼摔下必坏。
三星手机用户:别闹了,还没落地已经解体的手机怎么玩?
诺基亚手机用户:呵呵(高冷傲娇脸)。
(歪楼有奖,诚邀各路大侠来辩!楼越歪,奖越大,今天你脑洞了吗?)
-----正楼线!-----
解题思路:
我们把有n个手机的问题用Q(n)表示,下面将分别考虑问题。
问题:所谓的最少次数是什么意思?
分析:这里是指要给出一个算法,按照这个算法,无论如何都能保证在给定的步数内找出来(不论这个手机的极限层楼是几楼)。有些同学可能说最少是1次,因为比如我第一次从1楼把手机向下丢下去,并且手机坏了,则说明只需要最少一次。
其实,这并不是题目所说的最少的意思。如果第一次从1楼丢下去,并且手机不坏呢?这样还是一次么?所以说,最少一次是根本不成立的。
要明白最少次数的意思,并不是说在某一次特例中成立的最少次数(一定是1),而是说,要保证在那个求出的最少次数之内一定能找出那个极限的楼层值(而不论它是多少)。
题目隐含的信息:
题目中其实隐含着一个重大的信息,就是如果手机没有坏的话,就能再用它来摔第二次,如果坏了就不能用了。因为无法通过摔一个坏手机判断当前摔下的楼层是否超过最大的那个极限值。
Q(1) 分析:
当只有一个手机的时候,我们显然只能从1楼开始一层一层地试,在最差的情况下一直要到100层,也就是说,我们的Q(1)=100。
为什么呢,显然,如果我们在某一次从x楼丢下手机,并且手机没坏,则下一次的时候我们丢的楼层肯定要大于x(否则没有意义的,因为在 x楼都没有坏,则小于x楼也不会坏的),并且肯定不会大于 x+1,否则设下一次丢的楼层是 y(y&x+1),如果下一次在y层丢下的时候手机坏了,此时我们无法判断是x+1,x+2......y-1,这y-x-1( 大于1)个楼层中的哪一个楼层是手机的极限值,因为我们已经没有手机了。
所以,如果只有一个手机的时候,我们只能依次从1到100一次一次地丢。换句话说,如果我们知道手机在x和y层中的某一层丢下会坏,则我们只有从 x到y一个一个地试,也就是说,要测试y-x+1次。我们设有k个手机,且允许么t次可以确定的手机的极限楼层的范围是F(k,t),则知F(1,t)=t(由上的讨论可知)。
Q(2)分析:
我们不妨设最丢n次就可以,并且设第一个手机的序列是
(这里假设的是如果第一个手机一直没有坏,如果它在X(k)那里坏了,则不再使用第一个,此时已经知道了手机在X(k-1)和X(k)层之间坏掉的。
显然,一定要X(k)-X(k-1)+k&=n,因为如果第一个手机在丢X(k)层是坏掉了,则知道手机是在[X(k-1)+1, X(k)]之间的的某一个楼层坏掉了或者都没有坏掉,即我们遍历一下即可,此时因为此剩下一个手机,所以一定要丢X(k)-X(k-1)次。
另外由于从X1一直丢到X(k),第一个手机已经丢了k次,所以总共丢了X(k)-X(k-1)+k次,因为已经假设了最少n次可以搞定,所以有X(k)-X(k-1)+k&=n。
于是知道X(k)&=n+(n-1)+(n-2)+...+(n-k+1)显然X序列一定要不小于100,也就是说n+(n-1)+(n-2) +...+1&=100,即最小的n要满足n&=14,得到了第一个手机丢的序列是14, 27, 39, 50, 60, 69, 77, 84, 90, 95, 99, 100,这样可以知道手机如果第一次就坏了,则用第二个手机在[1,13]之间丢13次再加上第一个手机1次,共14次。在27时坏一样的有12+2.....
根据以上分析,有F(2,t)=t*(t+1)/2,即2个手机丢t次可以确定的范围是t*(t+1)/2,所以最少的次数要满足t*(t+1)/2&=100。
Q(3)分析:
一样地,设第一个手机的序列是
同样地设n次是最少的,则由于F(2,t)=t*(t+1)/2,则有X(k)-X(k-1)&=F(2, n-k+1),即知F(3,t)=F(2,t)+F(2,t-1)+F(2,t-2) +.....F(2,1),最后得到的最少的满足F(3,t)&=100 的t即是所求的。
..............
Q(m)分析:
一样地,有F(m,t)=F(m-1,t)+F(m-1, t-1)+ F(m-1, t-2)+...+F(m-1,1),并且最少的次数也是最少的满足F(m,t)&=100的t(这其实是一个递归的过程)。
-----正文分割线-----
你看懂了吗?
(一一想说的是,理科小白如我,看了三遍也没看懂解析在说什么有大神能解释得小白一些吗…求理科小天使拯救文科小菜鸟一一!)
更多关于百度实习/校招的全面攻略,请猛戳:
此话题已被删除您的位置:&& >
100层电梯第99关应该怎么过完美图文详解
10:34&&&&&&来源:游戏鸟&&&&&&作者:晓闲&&&&&&&&&&&&
在这款不断解谜不断找出口上楼的游戏中,晓闲已经表示被虐的体无完肤,比如搬开垃圾桶才能找到缺失的开关,或者晃动手机把门摇开。我们看看99关怎么过。
这关你需要摆出下面的等式,3+3*4=4*5-5这样就能开门了,声音的调节键为+、-。
游戏鸟官方微信
youxiniao(扫我)
每日推送最热最新的
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
好玩的单机手游
龙之狂热传奇中玩家的主要任务就是养龙驯龙,并和它们并肩作战,恢复世界的和平。繁育并喂养萌龙!
兄弟连3战争之子是一款由知名厂商Gameloft推出的《兄弟连》系列的第三部作品,奔赴战场与德国纳粹决一死战。~
好玩的网游手游
全民突击是腾讯首款全3D射击手游。超炫3D画面,完美还原经典场景。操作简便易懂,5分钟开启劲爆***战。
我叫MT2是一款精美的卡牌战斗网游。延续了传统《我叫MT》的经典特色。超华丽3D特效,360°动态视角哦~
游戏库推荐