永发信息网

微信红包的随机算法是怎样实现的

答案:2  悬赏:0  手机版
解决时间 2021-03-18 15:47
微信红包的随机算法是怎样实现的
最佳答案
我考虑了一个简单的算法:
比如100元,由10个人分,那么平均一个人是10元钱。然后付款后,系统开始分份儿。
第一份:系统由0~10元之间随机一个数,作为这一份的钱数,设x1。
第二份:剩下的钱(100-x1),系统由0~(100-x1)/(10-1)随机一个数,作为这份的钱数,设x2
.。。。
第n份:剩下的钱(100-x1-x2-...-xn),系统由0~(100-x1-x2-...-xn-1)/(10-n)随机一个数,作为这个份的钱数,设为xn
当用户进来拿红包的时候,系统由0~9之间随机一个数,随机到几,就取第几份红包,然后将这个数存到list里。当之后的用户抽到相同的随机数时,则将这个数+1,如遇相同再+1,直至list满,红包发完。
全部回答
1)红包大小服从截尾正态分布,其好处是减少抽取红包大小分布的方差,让更多的人抽取的红包在均值附近,同时仍给一小部分人抽取大红包的机会,总体来说增加了红包抽取人的积极性和游戏的公平性; 2)抽取红包大小与抽取红包先后无相关性。一种可能的红包产生机制是:当发红包者<准备红包>的时候,程序自动依照截尾分布产生了相应大小,相应个数的红包,然后随机发给抽取红包的人。同样,这样的一个随机过程有助于增加游戏的公平性,也减少了红包抽取人投机操作。 钱包钱数满足截尾正态随机数分布。大致为在截尾正态分布中取随机数,并用其求和数除以总价值,获得修正因子,再用修正因子乘上所有的随机数,得到红包价值。 这种分布意味着:低于平均值的红包多,但是离平均值不远;高于平均值的红包少,但是远大于平均值的红包
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
FLASH动画如何倒过来放
开心消消乐加好友80个为什么只送10个呢?
皇帝的新装.选文在描写人物时用了什么描写什
我对我一个异性朋友说晚安,他告诉我晚安不能
QQ音乐下载到MP4里后为啥没有歌词?
1965年农历6月15日是几月几日
英特尔r核芯显卡控制面板怎么设置玩游戏不卡
离婚证需要办多久
高分跪求!!!!!!麦兜当当伴我心所有插曲
世界杯小组赛的黄牌在淘汰赛还算吗?
亲们,笔记本自动待机,怎么办啊!!急急急!
我是一家做外卖的店,现在顾客反应我们的餐盒
罗平春节期间堵车吗
你好,我广发银行信用卡严重逾期,这几天天天
新帝豪手精版播放音乐,音质不好怎么解决
推荐资讯
舒格雷·李大师披萨我想知道这个在什么地方
赤亚丁丁压丁丁是什么歌
我想问下烟台地方港和烟台同三港,哪个离烟台
自考高升专一般要多久呢?
湘琴是怎么让植树爱上自己的
买跑步机到底有没有必要
申请加拿大大学需要IB文凭吗?
税务注销需提交哪些手续
木垒鑫源烧烤这个地址在什么地方,我要处理点
深圳到韩国的飞机票多少钱
职业介绍所要求求职者交中介费用合法的吗?
辰宿列张怎么读音
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?