问题描述
有n种类型的邮票,问将所有的类型的邮票全部收集起来所要的收集次数期望是多少。
分析
我们可以设dp[i]为已经收集了i种类型的票,还要收集n-i种的次数的期望。
那么显然dp[n]=0;
递推式子有:dp[i]=dp[i+1]∗(n−i)/n+dp[i]∗i/n+1dp[i]=dp[i+1]∗(n−i)/n+dp[i]∗i/n+1
化简可得
dp[i]=dp[i+1]+n/(n−i)dp[i]=dp[i+1]+n/(n−i)
再化简,公式就很显然了。
dp[0]=n(1/n+1/(n−1)+…+1/1)
这样我们就可以得到每张邮票所被拿的期望就是 (1/n+1/(n−1)+…+1/1) 。