公司年会抽奖使用 Math.random()函数是否有失公平?

2019-12-19 10:56:17 +08:00
 zhihupron
每个人有一张刮刮卡卡片。刮开后有编号,然后使用 javascript 生成随机数
https://www.runoob.com/jsref/jsref-random.html
19936 次点击
所在节点    奇思妙想
104 条回复
arvinsilm
2019-12-19 12:03:41 +08:00
用当天股票开盘、最近一期彩票、当天 PM2.5、气温、风速等等等等,完全规避暗箱操作
unixeno
2019-12-19 12:08:03 +08:00
binux
2019-12-19 12:11:18 +08:00
@xiaocongcong #13 给你一天时间能开发一个比别人网站更好的抽奖软件吗?如果不能,买一个又如何。
xenme
2019-12-19 12:12:40 +08:00
号码牌按照到场顺序随机拿也可以
q8164305
2019-12-19 12:15:25 +08:00
@Bakumon 如果刮刮卡也是根据某个数值 random 的呢?最终还不是一样
JJstyle
2019-12-19 12:16:53 +08:00
人手一个大奖就公平了
Mutoo
2019-12-19 12:28:25 +08:00
import './utils';

utils.js
-------
Math.random = () => 42; // rolled from my dices.
zoffy
2019-12-19 12:38:28 +08:00
你们公司的人是有本事预测 Math.random 的结果还是怎么滴?
wdhwg001
2019-12-19 12:49:17 +08:00
http://random.irb.hr/
可以使用量子随机数发生器。
chickenJuicer
2019-12-19 13:12:33 +08:00
我觉得楼主需要解释一下什么叫 公平
shintendo
2019-12-19 13:12:59 +08:00
每个员工自己想一个整数,写在 txt 里,压缩包加密码,上传,抽奖时每个人报出密码,现场解压,所有整数加在一起,对总人数取余,得中奖号码(狗头)
yaapoo
2019-12-19 13:27:12 +08:00
@Pastsong 微信红包不是随机的,是有几个分布模型制作的
sockpuppet9527
2019-12-19 13:40:04 +08:00
可以参考下这篇论文 P. L'Ecuyer, "Maximally Equidistributed Combined Tausworthe Generators", Mathematics of Computation, 65, 213 (1996), 203--213.
有内核工具的 random 是参考这篇文章写的,量足够大的情况下它能保证公平以及范围足够大。
fio 实现 : https://github.com/axboe/fio/blob/master/lib/rand.c
sockpuppet9527
2019-12-19 13:42:34 +08:00
@wqzjk393 #2
你只有保证嵌套的 random 函数每一个 random 函数都是公平的整个 random 函数才算公平。
那么问题回来了,既然已经保证了其中每一个 random 函数都是公平的为什么还需要进行嵌套?
chocotan
2019-12-19 13:45:51 +08:00
实践是检验真理的唯一标准
生成一百万个随机数,看是否是平均分布的
519718366
2019-12-19 13:52:00 +08:00
公司其他部门 mou 同事:我不管,你们 IT 抽到大奖,就是抽奖程序做手脚。🌚
whypool
2019-12-19 14:02:26 +08:00
比内定公平
RBQMT
2019-12-19 14:10:08 +08:00
需要一个集装箱,在里面放若干数量的猫,每个猫上都有号码,然后开始薛定谔吧
HeyWeGo
2019-12-19 14:13:47 +08:00
HeyWeGo
2019-12-19 14:15:38 +08:00
要不抽奖前,放一遍上面的视频,讲解下计算机随机的实现?觉得不公平的自己去搞个真随机去~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/630433

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX