首先,題目中已經說得很明確了(按照常理也是)。
當有mm
個包,你第k
k個搶。k
>mk
>
m的話。顯然,平時會顯示:來晚了一步,紅包已經被領完了
來晚了一步,紅包已經被領完了
就是,已經被第m
m個及之前的人領完了。所以說,期望是00。
然後,看k
<=m
k<=m
的時候。
我們構造乙個函式f(a
,b,c
)表示剩餘a元,還有b個包,你在第c個搶得到的期望f(
a,b,
c)表示剩餘
a元,還有
b個包,你在第
c個搶得到的期望
於是,我們就有乙個期望的轉移:
特別的,當k=1
k=1時
m=1m
=1時,我們這一類裡,只有m=k
=1m=
k=1,f
(a,1
,1)=
af(a
,1,1
)=a然後我們展開來看:當k!
=mk!
=m時::
f(n,
m,k)
=m2n
∗∫02
nmm−
12(n
−x1)
∫02(
n−x1
)m−1
m−22
(n−x
1−x2
)……m
−k+2
2(n−
x1..
.−xk
−2)∫
02(n
−x1.
..−x
k−2)
m−k+
2m−k
+12(
n−x1
...−
xk−1
)∫02
(n−x
1...
−xk−
1)m−
k+1x
kdxk
dxk−
1...
dx1f
(n,m
,k)=
2nm
∗∫0m
2n
2(n−
x1)
m−1
∫0m−
12(n
−x1
)2
(n−x
1−x
2)m
−2…
…2(n
−x1
...−
xk−2
)m−
k+2
∫0m−
k+22
(n−x
1..
.−xk
−2)
2(
n−x1
...
−xk−
1)m
−k+1
∫0m
−k+1
2(n−
x1.
..−x
k−1
)x
kdx
kd
xk−1
..
.dx1
當k=
mk=m
時,積分到:22
(n−x
1...
−xm−
2)∫0
2(n−
x1..
.−xm
−2)2
xm−1
dxm−
1dxm
−2..
.dx1
2(n−
x1.
..−x
m−2
)2∫
022(
n−x1
...
−xm−
2)
xm−
1dx
m−1
dxm
−2
...d
x1
就可以了。
然後…………
這怎麼做?!!!k
k重積分啊,套自適應性辛普森積分?
資料範圍一看,t
t了啊。
好吧好吧,我們化簡一下看看。
先只看後兩項:
我們開始化簡:
然後,把常數1m−
k+1m
−k+1
1提出來,繼續拆乙個積分號,這裡就不寫了。
希望自己找一張草稿紙寫一下。
神奇的發現。
竟然是那麼的相似。
我們很顯然的利用數學歸納法。
直接按照相似的公式積第一項,把常數也按照規律寫下來。
積分之後,把所有常數消去。
神奇的發現:f(
n,m,
k)=n
mf(n
,m,k
)=mn
mmp
!!!m
mp!!
!(感受到了世界的深深的惡意)
是不是我們算錯了?
好,現在請拿起身邊的卡西歐計算器。
我們試試樣例一:n=
100,m=
10,k=
3n=1
00,m
=10,
k=3我們把k=1
,2,3
k=1,
2,3都試一下。nm
=10mn
=10
k=1:
k=1:
k=2:
k=2:
k=3:
k=3:
算出來也是1010
哇…………
好吧,這道題就是nmm
n了,o1o1
搞出來了。en
dend
。
D 蘇卿念發紅包
首先,題目中已經說得很明確了 按照常理也是 當有mm 個包,你第k k個搶。k mk m的話。顯然,平時會顯示 來晚了一步,紅包已經被領完了 來晚了一步,紅包已經被領完了 就是,已經被第m m個及之前的人領完了。所以說,期望是00。然後,看k m k m 的時候。我們構造乙個函式f a b,c 表示...
P5104 紅包發紅包
題目的意思是給你乙個 w 元的紅包,第 i 個搶的人的錢數是從0到剩下的錢中隨機的乙個數。然後叫你求第 k 個人搶到錢的期望。顯然答案就是 frac 套上有理數取膜的模板即可求到答案了。注意 這裡的 2 k 不能用1左移,畢竟 k 辣麼大。k 不是小於10啊!看清題目!includeusing st...
Python 簡易發紅包程式
1 固定人數 import random money 100 for i in range 1,10 限制人數 a random.randint 1,10 隨機生成1到10元 money money a print 第 str i 個人,收到 str a 元,剩餘 str money 元 執行結果 ...