【发布时间】:2019-05-27 23:39:48
【问题描述】:
假设您正在与 n 名参与者进行一场辩论,并且希望以完全随机的方式将他们分成两半。
可以通过创建一个参与者列表,随机打乱该列表,然后强制前 n/2 个参与者作为一个团队进行辩论。
但是,如果这场辩论特别重要,我们希望确保我们创建的团队是可证明随机的,并且是公开可见的。我们希望能够证明我们创建的团队不是任何人的决定的直接结果。有没有办法做到这一点?
我相信这个问题归结为为随机数生成器创建种子的问题,该生成器基于特定时间的世界状态,但我不确定。这是软件工程师以前解决过的问题吗?是否有针对此问题的 API?
【问题讨论】:
-
请提供一个简短但完整的示例来说明问题?
-
我认为辩论的例子就足够了。你能解释一下不清楚的地方吗?这个想法可以在软件工程中有很多应用,我的一个项目需要它,这就是我在这里发布它的原因。
-
你试过什么?你研究了什么?什么语言?来源?这是一个很难缩小范围的非常广泛的问题,可能有助于通过具体的代码示例来帮助充实问题。
-
我无法研究这个问题,因为用谷歌搜索/搜索非常困难。您只需获得有关如何在特定语言中创建随机数的在线 RNG 和 CS1 级别问题的结果。我能想到的最佳解决方案是使用特定股票在特定日期的收盘价来播种 RNG。这个问题与特定语言和/或代码 sn-ps 没有任何关系。它更多的是关于如何解决软件工程和其他地方可能出现的随机数的特定问题。
标签: random random-seed