社区
C++ 语言
帖子详情
一个概率问题
expter
2009-09-01 02:07:44
比如我要随机生成一个数
他满足下面的随机生成概率规则。
生成数在【50,100】区间内。。
70%的概率在 【50,70】
21%的概率在 【71,85】
6%的概率在 【86,95】
3%的概率在 【96,100】
问下大家关于生成次数满足上面的概率的比较好的算法。
我的比较低效。。。
谢谢
...全文
151
10
打赏
收藏
一个概率问题
比如我要随机生成一个数 他满足下面的随机生成概率规则。 生成数在【50,100】区间内。。 70%的概率在 【50,70】 21%的概率在 【71,85】 6%的概率在 【86,95】 3%的概率在 【96,100】 问下大家关于生成次数满足上面的概率的比较好的算法。 我的比较低效。。。 谢谢
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ttklboy
2009-09-01
打赏
举报
回复
晕 干嘛给我分啊
LeonTown
2009-09-01
打赏
举报
回复
是不是就是,
设总数据量为N,
在【50,70】范围内,执行N*70%次rand(50,70);
其它类似。。。
我看你有戏
2009-09-01
打赏
举报
回复
[Quote=引用 6 楼 expter 的回复:]
但是我是一个范围的值,不是去某个特定的值。。
你那个方法如果去这个范围的值话,需要对数组进行构建。。
[/Quote]
七楼的不错
rendao0563
2009-09-01
打赏
举报
回复
70%的概率在 【50,70】
21%的概率在 【71,85】
6%的概率在 【86,95】
3%的概率在 【96,100】
n = rand() % 100 + 1;
if (n < 70) n = rand(50,70);
if (n > 70 && n < 91) n = rand(71,85);
if (n > 91 && n < 97) n = rand(86,95);
if (n > 97 && n < 100) n = rand(96,100);
expter
2009-09-01
打赏
举报
回复
但是我是一个范围的值,不是去某个特定的值。。
你那个方法如果去这个范围的值话,需要对数组进行构建。。
expter
2009-09-01
打赏
举报
回复
taodm的方法不错。。
ttklboy
2009-09-01
打赏
举报
回复
正态分布的公式是啥来?好多年没看数学了 ,想不起来了
taodm
2009-09-01
打赏
举报
回复
哦,先100的数组按概率填入1、2、3、4代表上面的4类。
在1~100间随机取值,查表得到是哪一类,再随机于其代码的区间内取值。
xingzhe2001
2009-09-01
打赏
举报
回复
感觉像是个正态分布,MARK.
expter
2009-09-01
打赏
举报
回复
UP
C++ 语言
65,186
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章