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

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

  •  
  •   docxs · 2020-12-15 01:50:38 +08:00 via iPhone · 2058 次点击
    这是一个创建于 1438 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

    求大神们帮忙指点下。

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