zoukankan      html  css  js  c++  java
  • 【转载】赠券收集问题

    转载自: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/(Ni)f(i+1)=f(i)+N/(N−i)

    楼主注:其实有些人看到这个等式可能会感觉奇怪,f(i+1)为什么等于1呢?我也不知道,其实是因为初值的问题,对每一个来说,第一次抽都是1,不知道怎样说有没有问题,如果有问题的话,希望指出,谢谢~

    f(n)=1+N/(N1)+N/(N2)++N/1   

    楼主注:数列的迭代得出的式子

  • 相关阅读:
    每周必写
    每周必写
    每周必写
    中国历史上成功的两人合作, 改进, 提高的例子
    每周必写(3)
    结对编程进度及自己的理解
    每周必写
    IT行业的“创新”、“模仿”
    工作时间内容,感想和思考
    周阅读内容
  • 原文地址:https://www.cnblogs.com/zhenglw/p/10004016.html
Copyright © 2011-2022 走看看