收集郵票問題和期望dp推導 變形例題

2021-10-25 08:39:47 字數 1226 閱讀 9953

有n種型別的郵票

問將所有的型別的郵票全部收集起來所要的收集次數期望是多少。

定義f [i

]f[i]

f[i]

為已經收集了i

ii張郵票,還要幾次達成目的

f [i

]=in

f[i]

+n−i

nf[i

+1]+

1f[i]=\fracf[i]+\fracf[i+1]+1

f[i]=n

i​f[

i]+n

n−i​

f[i+

1]+1

化簡得到f[i

]=f[

i+1]

+nn−

if[i]=f[i+1]+\frac

f[i]=f

[i+1

]+n−

in​所以f[0

]=n1

+n2+

n3..

.+nn

f[0]=\frac+\frac+\frac...+\frac

f[0]=1

n​+2

n​+3

n​..

.+nn

​所以每張郵票期望被拿11+

12+1

3...

+1

n\frac+\frac+\frac...+\frac

11​+21

​+31

​...

+n1​

這樣就是乙個很美妙的性質

收集郵票變形傳送門

比如這題

唯一的區別就是有些郵票拿走後不放回

但是!我們假定他放回,但是只計算第一次抽到的次數

就可以把不放回的郵票也看作放回,但只計算一次費用

就可以使用調和級數公式o(1

)o(1)

o(1)

解得

#include

using

namespace std;

const

int maxn=

2e5+10;

double f[maxn]

;int

main()

printf

("case %d: %.5lf\n"

,++casenum,ans);}

}

BZOJ 1426 收集郵票 期望DP

有n種不同的郵票,皮皮想收集所有種類的郵票。唯一的收集方法是到同學凡凡那裡購買,每次只能買一張,並且買到的郵票究竟是n種郵票中的哪一種是等概率的,概率均為1 n。但是由於凡凡也很喜歡郵票,所以皮皮購買第k張郵票需要支付k元錢。現在皮皮手中沒有郵票,皮皮想知道自己得到所有種類的郵票需要花費的錢數目的期...

bzoj 1426 收集郵票 期望dp

1426 收集郵票 time limit 1 sec memory limit 162 mb submit 392 solved 319 submit status discuss description 有n種不同的郵票,皮皮想收集所有種類的郵票。唯一的收集方法是到同學凡凡那裡購買,每次只能買一張...

洛谷4550 收集郵票(期望DP)

為啥這道題都是道許可權題。雖然 很短,但是要想清楚還是很難。令f i 表示當前已經擁有了i種郵票,要擁有n種郵票的期望操作次數。取到已得到的郵票概率為i n frac ni 取到新的郵票的概率為n i n frac nn i 所以可以得到遞推式f i f i times in frac ni f i...