日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【编程之美】金刚坐飞机问题

發布時間:2024/6/14 编程问答 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【编程之美】金刚坐飞机问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?題目描述

現在有一架飛機要起飛,乘客們正準備按機票號碼(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

總結

以上是生活随笔為你收集整理的【编程之美】金刚坐飞机问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。