看电影
Description
聽說NOIP2016大家都考得不錯,于是CCF獎勵省常中了 K 張變形金剛5的電影票獎勵OI隊的同學去看電影。可是省常中OI隊的同學們共有 N(N >= K)人。于是機智的你想到了一個公平公正的方法決定哪K人去看電影。
N個人排成一圈,按順時針順序標號為1 - N,每次隨機一個還存活的人的編號,將這個人踢出。繼續上述操作,直到剩下K個人。
但這樣顯然太無聊了,于是小S又想出一個牛逼的方法。
N個人排成一圈,按順時針順序標號為1 - N,每次隨機一個1 - N的編號,假設隨機到的編號是X,如果編號為X人還未踢出,則將這個人踢出,否則看編號為X % N + 1(即順時針順序下一個編號)的人是否存活,如果還未踢出則將他踢出,否則繼續看編號(X + 1)% N +1的人,如果已被踢出看順時針的下一個…………,以此類推,直到踢出一個人為止。重復上述操作,直到剩下K個人。
已知小S的編號是Id,問按照小S的方法來他有多少的概率可以不被踢出,成功得到看電影的機會。
Input
第一行包括三個正整數,N,K,Id(1<=K<=N<=10^9,1<=ID<=N )
Output
一行一個最簡分數,表示小S可以看到電影的概率。
(如果概率為1或0,請輸出1/1或0/1)
Sample Input
2 1 2
Sample Output
1/2
【樣例解釋】
一共兩個人,篩選經過1輪,第1輪每個人被踢出的概率都是等概率的,所以答案是1/2。
Data Constraint
.
.
.
.
.
.
分析
因為是一個環,所以每個人的概率是相同的,因為每個人要達到的目標是剩下的k個中的一個,那么在等概率的情況下,每個人的概率k/n
.
.
.
.
.
程序:
轉載于:https://www.cnblogs.com/YYC-0304/p/11094947.html
與50位技術專家面對面20年技術見證,附贈技術全景圖總結