生成总数为1的随机数字列表

用户名

是否有任何STL函数可让您创建一个随机数加起来为1的向量?理想情况下,这将取决于向量的大小,这样我就可以使向量的大小为23,并且此函数将使用介于0和1之间的随机数加起来总计为1的那23个元素。

templatetypedef

一种选择是使用generate随机数填充向量,然后使用accumulate求和,最后将向量中的所有值除以和,以将和归一化。如图所示:

std::vector<double> vec(23);
std::generate(vec.begin(), vec.end(), /* some random source */);
const double total = std::accumulate(vec.begin(), vec.end(), 0.0);
for (double& value: vec) value /= total;

希望这可以帮助!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用javascript中的特定数字生成随机数

来自分类Dev

总数相等的随机数

来自分类Dev

生成n个随机数,其总和为m,所有数字均应大于零

来自分类Dev

从任意加权列表生成随机数

来自分类Dev

在1,2,3之和中生成9个随机数,总和为15

来自分类Dev

用rand()生成随机数,数字零除外

来自分类Dev

生成len(10)个随机数,其中仅包含0-1s的数字

来自分类Dev

生成不同数字的随机数

来自分类Dev

Python-生成不重复的随机数字对

来自分类Dev

生成不包括一些数字的随机数

来自分类Dev

随机数生成器过于重复某些数字

来自分类Dev

为RPG游戏生成随机数

来自分类Dev

随机数字列表

来自分类Dev

在Swift中生成9位数字的随机数

来自分类Dev

如何生成与已经生成的数字不同的随机数?

来自分类Dev

为组R生成随机数

来自分类Dev

生成100个随机数字的列表,从中删除大于20且小于50的数字

来自分类Dev

如何在javascript中生成波动为1的随机数数组?

来自分类Dev

从任何数字生成确定性随机数

来自分类Dev

使用RNGCryptoServiceProvider生成范围为0到n的随机数列表

来自分类Dev

总数相等的随机数

来自分类Dev

生成包含随机数字的1 GB文本文件的最快方法是什么?

来自分类Dev

生成总数为1的随机数字列表

来自分类Dev

生成部分有序的随机数字列表

来自分类Dev

从任意加权列表生成随机数

来自分类Dev

为Cassandra DB生成随机数据

来自分类Dev

以特定数字为增量生成双随机数

来自分类Dev

生成随机数列表

来自分类Dev

生成 N 个 X 位的随机数,使得差值(从上到下减去的数字)为正