”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 如何生成固定总和的随机数,保证均匀分布?

如何生成固定总和的随机数,保证均匀分布?

发布于2025-04-19
浏览:312

How to Generate Random Numbers with a Fixed Sum, Guaranteed Uniform Distribution? 
使用固定的sum

[构成的挑战是生成一系列的pseudo-random数字,其总和等于一个预定值。具体而言,如何生成四个数字,当加在一起时,等于40。

,而不是依靠可以偏向第一个数字的分布的方法,而是采用了更统一的方法。该解决方案利用一种策略将预定义值分为较小的段,使用随机选择的分隔符。假设我们有四个随机的积极整数(E,F,G,G,H和H),以至于0 此技术可确保每组数字的概率相同,从而确保均匀分布。由此产生的随机数满足将求和到预定义值的要求。

扩展此概念,以下python函数会生成一个随机的正整数列表,这些列表汇总到指定的总计:

,[0] sividers)]

生成非阴性整数,采用了附加的转换:

“”“返回一个随机选择的n个非阴性整数列表,将汇总到总计。 每个这样的清单同样可能发生。”“” 返回[x -1 for x for x -sum_sample_pos(n,total n)]

最新教程 更多>

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3