游戏开发论坛

 找回密码
 立即注册
搜索
楼主: suquan77

[讨论] 也来转个数值题,关于概率的

[复制链接]

1

主题

291

帖子

644

积分

高级会员

Rank: 4

积分
644
发表于 2008-12-15 01:22:00 | 显示全部楼层

Re:也来转个数值题,关于概率的

这就是个单纯的概率题目,哪依次变化的,不知道抽签大家是公平的道理吗?你那分析是在一步步发生后的结果,不是事前的预测,就比如10个人去抽取1个奖品,每人概率都是10%一样。你那讨论的就是第一抽取了,但是他没抽取到,那么当然后面的概率变了,因为你这事件就变了,变9个人抽取1个奖品了。唉,很多没学过概率的就不好说了。

1

主题

291

帖子

644

积分

高级会员

Rank: 4

积分
644
发表于 2008-12-15 01:34:00 | 显示全部楼层

Re:也来转个数值题,关于概率的

呵呵,搞笑,总版主早早给出正确答案,一堆人不看,在这乱分析,看看我写的,虽然我的表达能力不怎么样,但应该可以说清楚了,要是还不明白,也就没必要在来讨论了,做这种题目,要不和总版主似的,用概率知识来解答,要不和有些朋友那么编个小程序,把可能出现的情况全讨论到(PS我不懂程序,不会),但我是学数学的出身,我敢保证版主的思路是100%正确的。

3

主题

29

帖子

33

积分

注册会员

Rank: 2

积分
33
发表于 2008-12-15 13:35:00 | 显示全部楼层

Re:也来转个数值题,关于概率的

没细想我YY一下:
我打算这么推导
2个人概率:1/2
3个人概率:1/3+1/3/2
4个人概率:1/4+1/4/3+1/4/3/2
....
100人概率:1/100+1/100/99.....+1/100/99/98.../2

2

主题

691

帖子

776

积分

高级会员

Rank: 4

积分
776
发表于 2008-12-16 13:04:00 | 显示全部楼层

Re:也来转个数值题,关于概率的

其实,只要能证明最后一个人,只能在1号位子和自己位子选一个,就可以证明答案是1/2了(因为2选1就是1/2嘛)。

那么,如何证明呢?简单的说,可以用递归排除法。

如,只有3个人,第3人不可能做2号。因为,如果他要座2号,就只有可能是2号的位子被占了,因为只有这样2号才可能不在自己的位子上。但能占2号位子的,不可能是比他后进场的3号,所以,3号是占不到2号位的(已经提前被1号占了)。

同理推论,我们可以发现,后面的人根本不可能坐到除一号外的前面的任何位子。因为那些位置,不是被相应的人坐了,就是已经被前面的某人占了(只有被其他人占了,相应的人才不在自己的位子上)。

而最后一个人,因为100后已经没位子了,而他又不能选除一号外前面的任何位置——所以,他只能选1号或者自己的位子(前面已经证明了,无论任何情况,他都不可能坐到2-99号)。

而他进场,就只能选一次位子,所以就跟扔一次硬币,而硬币只有正反2面,扔到正面的的概率是多大一样,答案只可能是1/2

4

主题

53

帖子

64

积分

注册会员

Rank: 2

积分
64
发表于 2008-12-20 20:47:00 | 显示全部楼层

Re:也来转个数值题,关于概率的

浪费时间

0

主题

5

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2008-12-26 16:55:00 | 显示全部楼层

Re:也来转个数值题,关于概率的

我觉得这道题目应该是这样想,傻子随机坐下一个位子,坐到自己的位子的概率为1/100
被傻子占位子的人也是随机坐下的,他能做到傻子的位子的概率为1/100,只要这两个人做对了其他人就都对了,100号坐到自己位子的概率为0.01*0.01=0.0001

14

主题

145

帖子

191

积分

注册会员

Rank: 2

积分
191
发表于 2008-12-31 17:55:00 | 显示全部楼层

Re:也来转个数值题,关于概率的

这是个很恐怖的题...

假设没有100人,而是5个人(一个傻子,四个正常人),分别为R5,R4,R3,R2,R1
R5直接占用R1位置几率为1/5
R5占用R4位置,R4占用R1位置几率为1/5*1/4
R5占用R3位置,R3占用R1位置几率为1/5*1/3
R5占用R2位置,R2占用R1位置几率为1/5*1/2
R5占用R4位置,R4占用R3位置,R3占用R1位置几率为1/5*1/4*1/3
R5占用R4位置,R4占用R2位置,R2占用R1位置几率为1/5*1/4*1/2
R5占用R3位置,R3占用R2位置,R2占用R1位置几率为1/5*1/3*1/2
R5占用R4位置,R4占用R3位置,R3占用R2位置,R2占用R1位置几率为1/5*1/4*1/3*1/2
所以,最后R1能找到位置的几率为
1-1/5-1/5*1/4-1/5*1/3-1/5*1/2-1/5*1/4*1/3-1/5*1/4*1/2-1/5*1/3*1/2-1/5*1/4*1/3*1/2=1/2

将其公式化
X为人数
根据递推算法可以得到:
1*2*3*...*X-((1^2+1)^2+1)^2)+1)...+1)循环X次/1*2*3*...*X=1/2
因此,几率为1/2


14

主题

145

帖子

191

积分

注册会员

Rank: 2

积分
191
发表于 2008-12-31 17:56:00 | 显示全部楼层

Re:也来转个数值题,关于概率的

不管是多少个人,几率总为1/2

11

主题

72

帖子

205

积分

中级会员

Rank: 3Rank: 3

积分
205
QQ
发表于 2009-1-5 17:43:00 | 显示全部楼层

Re:也来转个数值题,关于概率的

答案是99%坐对

6

主题

14

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2009-2-2 13:14:00 | 显示全部楼层

Re:也来转个数值题,关于概率的

傻子优先入场,一屁股坐下去,两种情况:
    1.正好做在自己位置,这样后面的正常人可以依次入座 概率1/100;
    2.傻子坐错了。之后的第n个正常人,发现自己座位被占的概率为Pn,有:
               n=1,P1=0;(可以把n=1=傻子的情况归入,因为P1=0不会有影响)
               n=2,P2=1/100;
               n=3,P3=1/100+1/100×1/99;(各项分别是被傻子占,被第2人占,被第n-1人占……)
               n=4,P4=1/100+1/100×1/99+(1/100×1/99)×1/98;
               …… ……
        观察得Pn=P(n-1)×(1+1/(102-n))
用C语言的递归法求解:
               int getPT(int n)
               {
                    float p;
                    if (n<2) printf("n的取值范围[2,100]");
                    else if(2==n) p=1/100;
                    else p=getPT(n-1)*(1+1/(102-n));
                    return(p);
                }
最终解得 P100=0.5
也就是100号入场时发现第100号座位被占的概率位1/2,即,最后一个人坐在自己的座位上上的概率位1/2。
这让我发现上面回帖的有位仁兄已经给出了答案,因为我没仔细看方法就自己去求解所以做了无用功,呵呵。
可见对一个问题的求解,思路多种多样,各人的切入角度不同。
                  
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-8-16 23:56

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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