【转载】赠券收集问题
转载自:https://blog.csdn.net/gogdizzy/article/details/53161214 //在此表示感谢
略有修改,可能会易懂一些(当然不排除把你们带进坑里的可能)
1 定义
如果购买一袋小完能方便面,可以赠送一个卡片,一共有N中卡片,每种卡片出现概率一致(当然实际上商家肯定会把某种卡片出现概率调低),那么如果想收集全部卡片,需要购买多少袋方便面?(求期望值)
这个问题就称为赠券收集者问题。
2 解决
设f(i)表示收集i种卡片的期望值,那么f(n)即为所求
f(1)=1
楼主注:由于第一次肯定会抽到一张卡片, 并且不可能重复,所以f(1)=1;
假设我们已经收集了i种,那么要收集第i+1种时,除去已经有了的i种,剩下的卡片任何一个如果我们得到,总类数都增加了1,拿到新卡片的概率是(N-i)/N,所以
f(i+1)=f(i)+N/(N−i)f(i+1)=f(i)+N/(N−i)
楼主注:其实有些人看到这个等式可能会感觉奇怪,f(i+1)为什么等于1呢?我也不知道,其实是因为初值的问题,对每一个来说,第一次抽都是1,不知道怎样说有没有问题,如果有问题的话,希望指出,谢谢~
f(n)=1+N/(N−1)+N/(N−2)+…+N/1
楼主注:数列的迭代得出的式子