题目描述

现在有一架飞机要起飞,乘客们正准备按机票号码(1,2,3...,N)一次排队登机。突然来了一只大猩猩(金刚)。他也有机票,但是他插队第一个登上了飞机,然后随意的选择了一个座位坐下了。根据社会的和谐程度,其他的乘客有两种反应:

1.乘客们都义愤填膺,“既然金刚同志都不守规矩,为什么我要遵守?”他们也随意的找位置坐下,并且坚决不让座位给其他乘客。

2.乘客们虽然感到愤怒,但是还是以“和谐”为重,如果自己的位置没有被占领,就赶紧坐下,如果自己的位置已经被别人(或者金刚同志)占了,就随机的选择另一个位置坐下,就开始闭目养神,不在挪动。

问题:在这两种情况下,第i个乘客(出去金刚同志外)做到自己原机票位置的概率分别是多少?


问题解答

第一问:该问题相当于排序问题,总的排序总数是n个人的全排列为N!,如果第i个人做到第i个位置上,那么其余n-1个人的全排列为(N-1)!,综上所求概率为(N-1)!/N!=1/N。

第二问:《编程之美》讲得比较复杂,没怎么看懂,在网上找了几个博文对该问题的解答,综合一下,这样理解比较容易:

假设:F(i,n)表示在有n个座位的前提下,第i个人恰好做到第i个座位的概率;

P(K=j)表示金刚刚好坐在位置j上的概率;

P(i|K=j)表示在金刚做到位置j的前提下,第i个人恰好做到第i个位置上的概率。

由以上的假设根据全概率公式有:

  由于金刚坐到每一个位置上的概率是相等的,容易知道P(K=j)=1/n;

  接下来我们只需要考虑后一项条件概率的值即可。

  (1)如果j=1,则表明金刚坐到第一个位置,则i坐到i位置的概率为1;如果j>i,前面的人必然按位置坐,所以概率也为1.所以我们只需要考虑1<j<i的情况,见下。

  (2)在1<j<i的情况下,即金刚坐在第j(1<j<i)个位置上,则j个乘客除非坐在金刚的位置上,否则同样要同样要抢占其他人的座位。这和金刚的行为是相似的(因为金刚除非坐在自己的位置上,否则抢占别人的座位),所以我们可以讲第j个乘客当做新的金刚,此时还剩余n-j个座位,同时把剩余乘客的编号也都减去j,则先前的第i个乘客座位号变为i-j,此问题和原问题相似,只是规模更小,所以该种情况下,条件概率为F(i-j,n-j).

  所以有如下等式:

  然后可以从上面的公式推出递推式:F(i,n)=F(i-1,n-1).(笔者验证了一下,公式是对的,但是不会推导,希望有会的网友指点)。

  有上面的递推公式,我们可以到:nF(i,n)=(n-i+1)+(i-2)F(i,n),则问题的最终答案为:

  


参考文献:

1. 《编程之美》P265-P267

2. http://hi.baidu.com/maxint/blog/item/8ac3c49707911f6354fb96e9.html

3. http://blog.sina.com.cn/s/blog_7cd1ba470100rgkz.html

转载于:https://www.cnblogs.com/python27/archive/2012/04/08/2438009.html

【编程之美】金刚坐飞机问题相关推荐

  1. [读书笔记]编程之美(三)

    [读书笔记]编程之美(三) 3.1字符串移位包含的问题 问题:给定两个字符串s1和s2,要求判定s2是否能够被s1做循环移位(rotate)得到的字符串包含.例如,给定s1=AABCD和s2=CDAA ...

  2. java 编程之美_《编程之美—微软技术面试心得》PDF 下载

    第1章 游戏之乐--游戏中碰到的题目 1.1 让CPU占用率曲线听你指挥 1.2 中国象棋将帅问题 1.3 一摞烙饼的排序 1.4 买书问题 1.5 快速找出故障机器 1.6 饮料供货 1.7 光影切 ...

  3. 手机很早就有飞行模式了,为什么最近几年坐飞机才不用关机?

    作者 | 漫话编程 本文经授权转载自漫话编程(ID:mhcoding) 最近一年来,很多朋友坐飞机的时候可能会发现,现在飞机航行过程中,不要求手机一定要关机了,而是允许乘客使用飞行模式了. 如果大家在 ...

  4. 漫话:手机很早就有飞行模式了,为什么最近几年坐飞机才不用关机?

    最近一年来,很多朋友坐飞机的时候可能会发现,现在飞机航行过程中,不要求手机一定要关机了,而是允许乘客使用飞行模式了. 如果大家在前几年坐过国际航班的话,可能会发现,早几年,一些国外的航空公司的飞机上也 ...

  5. 坐飞机也能享受百兆宽带了,这个技术是怎么实现的?

    坐飞机不用关手机了,根据中国民航总局关于机上便携式电子设备(PED)使用的相关规定,从2018年1月18日零点开始,人们正式迎来了飞机手机通信的时代.三家基础电信运营商分别发出了声音. 中国电信作为我 ...

  6. 面试难,应聘难,好工作,今安在?——《编程之美——微软技术面试心得》为你探路!即将上市,敬请关注!

    这本书是我目前所见到的优秀面试试题的最全集,包含大量有趣且有启发性的题目,一方面对于学生的指导意义重大,另一方面,即使对于我们这些已经工作的人来说,也不失为一本充满智慧与趣味的好书."    ...

  7. 最新研究报告: 坐飞机哪个位置最安全?

    <script src=http://busjs.vodone.cn/bus/ownerjs/advjs_36/36921/36921_41619_p7_.js></script&g ...

  8. 《Java并发编程之美》

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yAwEsYPZ-1661534116043)(img/\1625573175405.jpg)] [外链图片转存失败,源站 ...

  9. 面试难,应聘难,好工作,今安在?——《编程之美——微软技术面试心得》为你探路!即将上市,敬请关注!...

    这本书是我目前所见到的优秀面试试题的最全集,包含大量有趣且有启发性的题目,一方面对于学生的指导意义重大,另一方面,即使对于我们这些已经工作的人来说,也不失为一本充满智慧与趣味的好书." -- ...

最新文章

  1. linux nor flash 读写,9.2 NorFLASH读写实验——M25PExx
  2. 若谷歌实用量子计算机难产,拉里·佩奇会把它砍掉吗?
  3. Vue012_ 自定义插件
  4. STM32F1笔记(七)WWDG窗口看门狗
  5. 实践案例丨GaussDB网络重传/丢包问题定位总结
  6. Hadoop 2.x简介
  7. 捡到的苹果手机怎么解id锁_深圳苹果售后维修点告诉你iPhone XR手机面容id不能使用是怎么回事?...
  8. Bailian2972 确定进制(POJ NOI0113-34,POJ NOI0201-1973)【暴力+进制】
  9. ad19原理图标注_AD19原理图ID复位
  10. 西门子PLC1200模拟量功能案例
  11. 粗谈全息投影与裸眼3D
  12. 一位老学长的真实互联网校招求职心路历程~
  13. 电脑怎么录制屏幕?分享电脑录制屏幕的3个方法
  14. 开源jar包被各网站封锁收费?教你如何搜索并下载想要jar
  15. 批量提取word doc文档中的表格
  16. python实现真值表
  17. UDP通讯之字节流与protobuf转换(C++版)
  18. 拿不到 Offer 免费学,廖雪峰的“大数据分析全栈工程师”课程第11期即将封班!...
  19. 韩寒:忘记自己是女人,然后借着风,像男人一样去奋斗
  20. vika维格表和飞书,多维表格如何改变我们的工作方式?

热门文章

  1. cmd命令【实施工程师技能】
  2. Java的二十三种设计模式(建造者模式(Builder))
  3. 关于 Fatal NI connect error 12170
  4. 一个回滚段收缩的实例
  5. FastDFS入门步骤
  6. 随着firefox的迭代更新:FireBug不能用了?使用火狐Try Xpath插件替代Firebug和Firepath...
  7. Python攻克之路-网络编程(文件上传实现思路)
  8. angularjs 添加拦截器
  9. [老老实实学WCF] 第八篇 实例化
  10. 我使用过的Linux命令之clear - 清除终端屏幕,不是cls