algorithm - 比率为 1 的随机数 :2

标签 algorithm math random numbers distribution

我必须生成两组随机矩阵 每个包含 3 位数字,范围从 2 - 10

那样

矩阵 1:994,878,129,121

矩阵 2:272,794,378,212

两个矩阵中的数字都必须大于 100 且小于 999

但是

两个矩阵的平均值必须是 1:2 或 2:3 的比率,无论用户输入是什么约束

我的数学技能有点有限,所以有什么想法可以实现吗?

最佳答案

为此,您必须知道每个列表中有多少个数字。我根据您的示例假设每个中有四个数字。

  1. 用四个随机数填充第一个列表。
  2. 计算第一个列表的平均值。
  3. 将平均值乘以 2 或 3/2,以用户输入的为准。这是第二个列表的所需均值。
  4. 乘以 4。这是第二个列表的要求总数。
  5. 生成 3 个随机数。
  6. 从第 4 步的总数中减去第 5 步中三个数字的总数。这是第二个列表的第四个数字。
  7. 如果第 6 步中的数字不在正确的范围内,请从第 5 步重新开始。

请注意,第二个列表中的最后一个数字并不是真正随机的,因为它基于列表中的其他值。

关于algorithm - 比率为 1 的随机数 :2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/240022/

相关文章:

c++ - 帮助这个算法

algorithm - 多分辨率小波分解代码

c# - 将一个数字的符号赋予另一个数字?

python - 使用 random 函数随机化计划任务

mysql - 在 mysql 上使用 Limit random

asp.net - 在 ASP.NET 中显示随机图像的最佳方式是什么?

python - 从列表字典创建层次结构

linux - 计算滚动总数的吞吐量

java - 使用 Math 类将余弦转换为度数

algorithm - 哪些来源可以产生随机数据