微软的应聘题

一到十楼每层有一颗钻石, 
你只能开电梯门十次, 
且仅有一次伸手机会, 
问如何拿到最大的钻石。   

 

答案:

如果不限定电梯单项行走,打开前面九道门,找到这就到门中钻石最多的一层,重新打开那道门,取走钻石。 
有90%的概率取到最多的钻石,10%的概率取到第二多的钻石。 
 
如果限定电梯单项行走,那么应该是先开前三道门,然后取后面第一个超过前面的(或者最后一个)。 
参考: 
http://members.lycos.co.uk/huidu/club/club.php?bbsid=6ae16c645294ac83 
 
----------------------------------------------------------------------- 
这个问题实际上就是选择取到最大钻石可能性最大的一种策略,它的原型就是秘书问题,在《数学的实践与认识》这本刊物上有过这个问题的详尽分析,具体哪一期的忘了,不过可以肯定是在99-00的范围内。 
 
首先要确定一种决策,由于我们不可能返回再取钻石,因此,我们采用如下决策: 
选取k,舍弃前k个钻石,从第k+1颗起,遇到历史最大的就取之,否则,取最后一颗钻石。 
 
设p(k)是此策略下去到最大钻石的概率,下面计算p(k). 
假设最大钻石为第j颗,如果能取到,则j>k, 
且在j之前的所有钻石中的最大者必须在前k颗钻石中,于是概率应为k/(j-1)*(1/n), 
因此,p(k)=sum(k/(j-1)*(1/n)),where  j  from  k+1  to  n, 
 
为了使取到最大钻石的概率最大,我们只需选择合适的k即可。 
考虑p(k)-p(k-1)及p(k+1)-p(k),当k为所求时,前者大于0,而后者则小于0。因为p(k)-p(k-1)=1/n*[sum(1/(j-1))-1]>0,j  from  k+1  to  n,所以k越小越好。又因为p(k+1)-p(k)=1/n*[sum(1/(j-1))-1]<0,j  from  k+2  to  n,所以k越大越好。根据对这两式的分析不难确定k。 
思路大致是这样了,你自己在细细琢磨吧! 
 
----------------------------------------------------------------------- 
这个问题有很多变种,如:相亲问题,捡麦穗问题之类。。 
该题本质上是做有记忆的、不能回溯的一次性选择。 
根据历史判断可能的平均值(或最优值),然后用未来的机会作判断 
兜底选择是最后一个。 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值