V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
codingbody
V2EX  ›  编程

即时抽奖概率问题

  •  
  •   codingbody · 2020-03-27 01:17:16 +08:00 · 4563 次点击
    这是一个创建于 1704 天前的主题,其中的信息可能已经有所发展或是发生改变。

    假设一共有 5 个奖品,用户一参与就立刻开奖,但参与人数是不确定,想要保证每个人中奖的概率相同,应该怎么设计?

    15 条回复    2020-03-27 11:49:55 +08:00
    Jooooooooo
        1
    Jooooooooo  
       2020-03-27 01:20:04 +08:00
    动态调整整个抽奖池就好了
    easylee
        2
    easylee  
       2020-03-27 01:22:17 +08:00 via Android
    把中奖概率和参与人数独立开,这个问题就很简单了。
    codingbody
        3
    codingbody  
    OP
       2020-03-27 01:32:13 +08:00
    @easylee 要即时开奖,而且参与的人数不是确定的,如果是先参与,后开奖。那样参与人数已知,奖品个数已知,概率自然就已知的。很简单。
    codingbody
        4
    codingbody  
    OP
       2020-03-27 01:34:10 +08:00
    @Jooooooooo 动态调整奖池可以使得每个人概率相等嘛?不能吧。
    kaiki
        5
    kaiki  
       2020-03-27 02:03:45 +08:00
    预抽奖,中不中在你抽之前就已经决定了,就像你在售货机里面买东西,只有最前面的会掉出来
    Perry
        6
    Perry  
       2020-03-27 02:38:30 +08:00
    意思是开奖之后还会有人参与?这个你告诉我怎么保证后面参与的人的中奖概率。。。
    Xs0ul
        7
    Xs0ul  
       2020-03-27 02:48:19 +08:00
    这个说不通的,奖品全抽完了后面的人就是 0 概率了
    codingbody
        8
    codingbody  
    OP
       2020-03-27 02:51:07 +08:00
    @Perry #6 即刻开奖的意思是:当一个用户点击抽奖后立刻就知道是否中奖,想象一下自己玩过的九宫格抽奖。
    codingbody
        9
    codingbody  
    OP
       2020-03-27 02:56:30 +08:00
    @Xs0ul #7 假设 5 个人玩抽签游戏,你觉得第一人抽中的概率和第五个人抽中的概率是否一样? 我觉得每个人在抽签后不告知其他没有抽签的人结果的情况下,他们每个人抽中的概率是一样的。
    Xs0ul
        10
    Xs0ul  
       2020-03-27 03:19:24 +08:00
    @yuhaocoding #9 人数定了是可以的,但是人数不定就不一样了
    Perry
        11
    Perry  
       2020-03-27 03:27:27 +08:00
    @yuhaocoding #9

    “我觉得每个人在抽签后不告知其他没有抽签的人结果的情况下,他们每个人抽中的概率是一样的。”

    你自己回答了自己的问题。我以为你要保证的是统计学上的抽奖概率相同。
    Xs0ul
        12
    Xs0ul  
       2020-03-27 04:00:08 +08:00
    你的要求里有三个条件:1. 每个人等概率 2. 人数不固定 3. 即时开奖
    去掉任意一个都有可行的方案
    去掉 1 不提了
    去掉 2: 人数固定就等于提前准备好 N 张签大家抽,这个你自己已经弄清楚了
    去掉 3: 蓄水池抽样,但是无法实时开奖
    SjwNo1
        13
    SjwNo1  
       2020-03-27 05:57:39 +08:00
    我就没看懂你的需求。。。
    Mutoo
        14
    Mutoo  
       2020-03-27 06:55:30 +08:00
    这是条件概率而非独立随机概率,肯定是不一样的,先到先得。
    aguesuka
        15
    aguesuka  
       2020-03-27 11:49:55 +08:00 via Android
    可以画一张图,横轴代表第 x 个用户,纵轴代表用户的中奖率 y=f(x)。那么 f 在 0 到无穷大的积分就是你的奖品数量。显然你的需求是做不到的。


    有几个方法,1.限制积分范围,也就是只有前 n 个用户中奖。2.奖品不设上限。3.将 f 函数改为非常量函数,并满足在 0 到无穷大的积分为常数
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1374 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 17:18 · PVG 01:18 · LAX 09:18 · JFK 12:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.