V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
docxs
V2EX  ›  算法

抽奖的实现思路有哪些了?

  •  
  •   docxs · Dec 15, 2020 via iPhone · 2847 views
    This topic created in 1969 days ago, the information mentioned may be changed or developed.

    像转发抽奖这种,三个物品,10 万人参与转发,每个人转发次数决定获奖权重,中过的人还不能再中,有什么快的解决思路吗?
    最简单就是抽三次,每次权重随机,然后剔除中的人,再进行下一次权重随机,这个时间复杂度好像挺高

    求大神们帮忙指点下。

    6 replies    2020-12-15 12:05:41 +08:00
    zro
        1
    zro  
       Dec 15, 2020
    啊,居然有放会真中奖的抽奖?
    murmur
        2
    murmur  
       Dec 15, 2020
    新浪微博有人员画像的,你在使用的时候就决定你有没有资格抽奖了,上次王思聪抽 100 个人几乎都是女的就很说明问题了
    nutting
        3
    nutting  
       Dec 15, 2020
    你是说纯算法上,还是怎么作弊,这不一样
    ignor
        4
    ignor  
       Dec 15, 2020 via Android
    这复杂度高在哪? 1w 个物品给 1 亿人抽都是秒算吧
    kop1989
        5
    kop1989  
       Dec 15, 2020   ❤️ 1
    不理解为什么还“权重随机”
    用一个表专门用来抽奖。每次触发转发的时候,都记录一条包含此用户唯一值的记录。
    然后三次获取 随机数( 0~表的 length )搞定。(如果三次当中,有重复的,就再抽,直到出现三个不重复的结果)
    docxs
        6
    docxs  
    OP
       Dec 15, 2020 via iPhone
    找到了,A-RES. A-ExpJ
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4495 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 45ms · UTC 10:12 · PVG 18:12 · LAX 03:12 · JFK 06:12
    ♥ Do have faith in what you're doing.