设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 3436|回复: 16
打印 上一主题 下一主题

[已经过期] 有两个关于随机数几率的问题

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
231 小时
注册时间
2007-12-17
帖子
541
跳转到指定楼层
1
发表于 2014-11-26 08:12:22 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 stella 于 2014-11-26 08:16 编辑

1):是rand(301)得到300的几率大,还是rand(101)+rand(101)+rand(101)得到300的几率大?

2):是rand(101)+rand(101)+rand(101)得到300的几率大,还是rand(101)*3得到300的几率大?
星尘泪 该用户已被删除
2
发表于 2014-11-26 08:30:50 手机端发表。 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
231 小时
注册时间
2007-12-17
帖子
541
3
 楼主| 发表于 2014-11-26 08:36:03 | 只看该作者
星尘泪 发表于 2014-11-26 08:30
根据概率学
1.rand(301)
2.rand(301)*3

能不能得出概率小的那一种算法算出300的概率是多少?

点评

lx已说明  发表于 2014-11-26 09:44
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2749
在线时间
2630 小时
注册时间
2013-1-16
帖子
5657

贵宾

4
发表于 2014-11-26 09:35:30 | 只看该作者
本帖最后由 myownroc 于 2014-11-26 11:50 编辑

rand(301)要等于300概率为1/301
3个rand(101)相加要是想等于300,必须要求3个数都是100
得到100的概率是1/101,故这种方法的概率是1/101的三次方。

然后rand(101)*3概率是1/101

点评

@p叔 手抖……  发表于 2014-11-26 11:47
好吧,是我自己搞错了,我以为rand(301)是1~301,结果发现是0~300  发表于 2014-11-26 10:06
3个rand(101)相加要是想等于300未必是要都100啊,别误导人……  发表于 2014-11-26 10:05
1/101的三次方  发表于 2014-11-26 09:41
(Created by @喵kano)


施工现场:hotege.github.io
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
33451
在线时间
5108 小时
注册时间
2012-11-19
帖子
4878

开拓者

5
发表于 2014-11-26 09:50:55 | 只看该作者

1):LS

2):rand(101)*3得到300的几率大。
xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
50 小时
注册时间
2006-11-16
帖子
3409
6
发表于 2014-11-26 10:12:04 | 只看该作者
本帖最后由 金圭子 于 2014-11-26 10:18 编辑

概率啥的我最喜欢了,不过好久不摸ruby了,差点忘了rand(301)是0~300了……结果4楼那里写了个错误的点评,在此致歉。

说一个简单点的情况,把100变成10,把3变成2,这样看起来好理解一点:
假设现在是rand(10),也就是0~9,那0和9的几率都是1/10。
那rand(20)的几率就是0~19,各1/20。
而rand(10)*2呢,是0、2、4、6、8、10、12、14、16、18的几率各为1/10
而rand(10)+rand(10)呢,0和18的几率都是1/100,因为必须是都是0和9的时候才能得到0和18,那一个为0的几率是1/10,另一个也是1/10,最后就是1/100。
下来1和17的话是2倍的0和18,因为1的话是0+1或者1+0,每个是1/100,一共是2/100。
同理,2和16是3/100,3和15是4/100……最后9是10/100。

如果还是不理解,可以看这个图:

最近好多想到PM的问题……不会嫌我烦了吧……
回复 支持 反对

使用道具 举报

Lv4.逐梦者 (版主)

梦石
0
星屑
9532
在线时间
5073 小时
注册时间
2013-6-21
帖子
3580

开拓者贵宾剧作品鉴家

7
发表于 2014-11-26 10:59:34 | 只看该作者
前来解答作死:
设Xi是独立同分布(independent identical distributed)的随机变量,P(Xi=k) = p(k),(1<=i<=n)
在这个问题里面(第一个问题的第二种情况),n=3,k=0,1,2,3,...,100,p(k) = 1/101,对于任意的k
考察X1的概率母函数g(s):

由于Xi是独立同分布的,所以Y的概率母函数是g(s)的n次方(这里n=3)

则利用概率母函数的性质,P(Y=300)为s^300前的系数:
P(Y=300)=(302C2+201C2+100C2)/(101^3)=1/(101^3)

PS:其实这种方法不是作死,用这种方法,求任意P(Y=k)都是比较容易的(相比于穷举而言)
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2749
在线时间
2630 小时
注册时间
2013-1-16
帖子
5657

贵宾

8
发表于 2014-11-26 12:03:48 | 只看该作者
本帖最后由 myownroc 于 2014-11-26 12:09 编辑

不过我还想说的是编程中的随机数是伪随机数,样本数量一大会有规律的……
于是单纯的rand(x)规律比较明显,而n个rand(x/n)相加却能有所改善
以下是VB的结果

随机生成(x, y)以(x, y)为坐标绘制点。
rand(x)
rand(x/n)

地图炮:@RyanBern @金圭子 @芯☆淡茹水  

点评

我的意思是比之前的均匀了一点,样本量一大又能看出来  发表于 2014-11-26 15:09
其实我只是想说,第二种方法得到的根本不是均匀分布...  发表于 2014-11-26 14:55
此帖已经被玩坏,都怪我起的头不好  发表于 2014-11-26 14:29
初等概率论  发表于 2014-11-26 12:39
↓这些是概率论里的?  发表于 2014-11-26 12:38

评分

参与人数 1星屑 +100 收起 理由
RyanBern + 100 我很赞同

查看全部评分

(Created by @喵kano)


施工现场:hotege.github.io
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
4
星屑
4459
在线时间
6784 小时
注册时间
2014-1-6
帖子
5052

开拓者

9
发表于 2014-11-26 12:41:36 | 只看该作者
啊!!!!!我不懂数学!我不懂数学!为啥在水区出现!{:2_270:}
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
50 小时
注册时间
2006-11-16
帖子
3409
10
发表于 2014-11-26 13:51:29 | 只看该作者
本帖最后由 金圭子 于 2014-11-26 13:58 编辑
myownroc 发表于 2014-11-26 12:03
不过我还想说的是编程中的随机数是伪随机数,样本数量一大会有规律的……
于是单纯的rand(x)规律比较明显, ...


我擦,第一个也太明显了吧,典型的线性代数啊╮(╯o╰)╭
第二个倒是很符合指数律的。

嗯,拷贝到VB6实测了一下(我一直觉得vb6是个好东西,平时开个解密码玩配对算24点之类的直接用vb6写个程序跑下多快),
第一个点过去简直就是波浪一样的感觉(汗),
第二个倒是有点星云团的感觉(笑)。

很好奇Command2是啥……

先沉下去想想怎么写一个模拟指数律效果东东出来……
最近好多想到PM的问题……不会嫌我烦了吧……
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-21 00:34

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表