我想生成一个0&1 (10000次迭代)的随机流,在这个约束下,1应该在400次迭代中只出现一次,有人能帮我解决一下它的C代码、C语言中要用到的库和函数吗?.Can
发布于 2014-06-10 17:45:19
400.0 * rand() / (RAND_MAX + 1.0) < 1 ? 1 : 0是一种方法。
如果你觉得很自信,并且表达式与左值类型匹配,就去掉三元组。注意400.0和1.0的小心放置。
(重要说明:如果您需要精确的1/ 400概率,则不要接受此解决方案。如果RAND_MAX是400的“非常差的倍数”,这个解决方案将不能很好地工作。假设标准要求RAND_MAX不低于32767,那么在这个低值下,该技术的统计特性将很差。)
https://stackoverflow.com/questions/24137713
复制相似问题