SPOJ1026 Favorite Dice & 赠券收集问题
原题链接
假设有 n 个数,每种每个数获取机率相同,而且每个数亦无限供应。若取 t 个,能集齐这 n 个数的概率是多少?
题解
我们考虑当你手上已有 i 种不同的数,从集合中任选一个数得到新数的概率,为nn−i+1,那期望即为p1=n−i+1n。所以总期望为∑i=1nn−i+1n=∑i=1nin。
当然也可以用概率 dp 来推:
我们设 f[i] 表示取了 i 种数时还须取的数的期望。
显然f[n]=0,答案为f[0],所以为逆推。
又由于选第 i 个数后再选一个数与已经选过的数不同的概率为nn−i,相同为ni。
于是可得f[i]=nn−if[i+1]+nif[i]+1。
解得f[i]=f[i+1]+n−in。
于是整理一下就变成了f[0]=∑i=1nin。