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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

2019ICPC(银川) - Take Your Seat(概率公式)

發(fā)布時(shí)間:2024/4/11 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2019ICPC(银川) - Take Your Seat(概率公式) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

題目鏈接:點(diǎn)擊查看

題目大意:朵哈要坐飛機(jī)去旅游,出發(fā)的時(shí)候包括朵哈在內(nèi)一共有n個(gè)人要上飛機(jī),這班飛機(jī)有n個(gè)座位,第i個(gè)人的座位號(hào)是i,朵哈的座位號(hào)是1。

現(xiàn)在n個(gè)人按照座位號(hào)是從1到n的順序上飛機(jī),但朵哈忘了自己的座位,于是她就等概率隨機(jī)選了一個(gè)位置坐下了,而其余人都記得自己的位置,如果他們中的一個(gè)人上飛機(jī)之后發(fā)現(xiàn)自己的位置被占了,則會(huì)在剩下的位置中等概率隨機(jī)選一個(gè)坐下,如果沒被占,則會(huì)直接坐到自己的位置上。

你需要計(jì)算最后一個(gè)上飛機(jī)的人坐到了自己位置上的概率。

朵哈返程的時(shí)候,包括她在內(nèi)的m個(gè)人會(huì)按照一個(gè)隨機(jī)的座位號(hào)上飛機(jī)。

這班飛機(jī)有m個(gè)座位,朵哈的座位號(hào)還是1。但是朵哈又一次忘記了自己的座位,并且還是只有她忘記了自己的座位?,F(xiàn)在所有人找座位的規(guī)則和出發(fā)時(shí)完全相同,朵哈或任何一個(gè)發(fā)現(xiàn)自己座位已經(jīng)被占了的人會(huì)等概率隨機(jī)選一個(gè)沒被占的座位坐下。

你需要計(jì)算最后一個(gè)上飛機(jī)的人坐到了自己位置上的概率。

題目分析:

我們先來分析第一問,按照順序上飛機(jī),很容易知道,當(dāng)n=1時(shí),答案時(shí)1,當(dāng)n=2時(shí),答案是0.5,那么我們來分析一下n大于等于3的情況,我們設(shè)f(i)為飛機(jī)上一共有i個(gè)人時(shí)的概率

  • 當(dāng)朵哈坐在1號(hào)位,那么剩下n-1個(gè)人包括最后一個(gè)人在內(nèi),肯定都能坐到自己的位置,所以此時(shí)概率為1
  • 當(dāng)朵哈坐在n號(hào)位,那么第n個(gè)人最后上飛機(jī),肯定坐不到自己的位置了,所以此時(shí)概率為0
  • 當(dāng)朵哈坐在第k號(hào)位,那么第2~k-1個(gè)人可以坐在自己的位置上,輪到第k個(gè)人時(shí)會(huì)開始隨機(jī)坐,那么我們不妨將第k個(gè)人視為朵哈,將剩余的n-k個(gè)空位,視為新的n,以此類推,這樣遞推關(guān)系就很清晰了:f(n)=(1+f(2)+f(3)+……+f(n-2)+f(n-1))/n
  • 其實(shí)自己在紙上畫一畫n=3和n=4的情況,應(yīng)該一下子也能確定第一問的概率當(dāng)n大于等于2時(shí)時(shí)恒等于0.5的了。。

    接下來我們在第一問的基礎(chǔ)上討論第二問:

  • 如果朵哈第1個(gè)上飛機(jī),那么問題就轉(zhuǎn)化成了求f(m)
  • 如果朵哈第2個(gè)上飛機(jī),因?yàn)榈谝粋€(gè)人肯定坐在了自己的位置上,那么就是求f(m-1)
  • 如果朵哈第3個(gè)上飛機(jī),因?yàn)榍皟蓚€(gè)人肯定坐在了自己的位置上,那么就是求f(m-2)
  • 如果朵哈第k個(gè)上飛機(jī),因?yàn)榍発-1個(gè)人肯定坐在了自己的座位上,那么就是求f(m-k+1)
  • 如果朵哈最后一個(gè)上飛機(jī),那概率肯定時(shí)1
  • 又因?yàn)閒(2)=f(3)=f(4)=……=f(n-1)=f(n)=0.5,

    所以我們分兩種情況即可:

  • 如果朵哈最后一個(gè)上飛機(jī),概率為1
  • 如果朵哈不是最后一個(gè)上飛機(jī),概率為0.5
  • 而朵哈上飛機(jī)的順序是隨機(jī)的,所以朵哈最后一個(gè)上飛機(jī)的概率為1/m,所以第二問的公式也就推出來了:

    f(m)=(1/m)*1+(m-1/m)*0.5=(m+1)/(2*m),n==1時(shí)也適用

    上代碼:

    #include<iostream> #include<cstdio> #include<string> #include<cstring> #include<algorithm> #include<stack> #include<queue> #include<map> #include<cmath> #include<set> #include<sstream> using namespace std;typedef long long LL;const int inf=0x3f3f3f3f;const int N=1e6+100;int main() { // freopen("input.txt","r",stdin);int w;cin>>w;int kase=0; while(w--){int n,m;scanf("%d%d",&n,&m);printf("Case #%d: ",++kase);if(n==1)printf("%.6f",1.0);elseprintf("%.6f",0.5);printf(" %.6f\n",((m+1)*1.0)/(2*m*1.0));}return 0; }

    ?

    總結(jié)

    以上是生活随笔為你收集整理的2019ICPC(银川) - Take Your Seat(概率公式)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。