几个概率题

原文:http://www.cnblogs.com/orchid/p/4067042.html

1,一根木棒,截成三截,组成三角形的概率是多少?

2,抛一个六面的色子,连续抛直到抛到6为止,问期望的抛的次数是多少?

3,一个木桶里面有M个白球,每分钟从桶中随机取出一个球涂成红色(无论白或红都涂红)再放回,问将桶中球全部涂红的期望时间是多少?

4,你有一把宝剑。每使用一个宝石,有50%的概率会成功让宝剑升一级,50%的概率会失败。如果宝剑的级数大于等于5的话,那么失败会使得宝剑降1级。如果宝剑的级数小于5的话,失败没有效果。问题是:期望用多少个宝石可以让一把1级的宝剑升到9级?

5,一个黑盒里是一个图,结构未知,只知道点的个数是n,边的个数是m,写公式给出两个点相连的概率。

6,54张牌,平均分成三堆,大小王在同一堆的概率?

 

Solutions:

1, 0.25

假设整体长度为1(因为这个值不影响概率的计算,所以可以这样假设),第一段的长度是x,第二段为y,第三段为1-x-y。

x,y值要想成为木棍切出来的长度必须要满足的条件为 0<x<1, 0<y<1,0<x+y<1,这些点构成了下图1中红色的部分。

而这三段要构成三角形还必须满足:

x+y>1-x-y => x+y>0.5

x+1-x-y>y => y<0.5;

y+1-x-y>y => x<0.5

这些点构成图2中黄色区域。黄色区域与红色区域面积的比值就是,所有切割中能构成三角形的切割方式和所有切割方式的比值。也就是题目的答案。

 

2,这种一种概率模型?叫啥来着

因为每次抛到6的概率相等,都是1/6,于是期望的次数就是1/(1/6)=6次。

 

3,一个木桶里面有M个白球,每分钟从桶中随机取出一个球涂成红色(无论白或红都涂红)再放回,问将桶中球全部涂红的期望时间是多少?

这题目和上面的用到了同样的概率模型。

在M个球中取到第1个未着色的取得次数期望是:1

在M个球中取到第2个未着色的取得次数期望是:1/(M-1/M)   ---- 这就是用题目2的模型得出的期望,就像抛色子(只有两色),第一个着色的点数为1,其它所有未着色的是点数为2。

在M个球中取到第3个未着色的取得次数期望是:1/(M-2/M)

...

在M个球中取到第M个未作色的求所需要的取得次数的期望是:1/(1/M)

整体次数的期望就是 1+ 1/(M-1/M)+1/(M-2/M)+...+M

 

4,

用a[i]表示从第i-1级升到第i级期望使用的宝石数量。

当i<=5时,因为不会降级,则期望的数量均为2,即a[2] = a[3] = a[4] = a[5] = 2

当i>5时,因为会降级,成功时一个宝石就够了,不成功时需要倒退一级,需要先使用a[i-1]个宝石先回到i-1级,再使用a[i]个宝石升到第i级,即

a[i] = 1 * 1/2 + (1 + a[i-1] + a[i]) * 1/2

即 a[i] = a[i-1] + 2

可知,a[6]= 4, a[7] = 6, a[8] = 8, a[9] = 10

则1级到9级需要的宝石数为 a[2]+…+a[9] = 36。

 

5,(only my solution, maybe it's not right...)

n个顶点可以有N=n*(n-1)/2条边,所以这个问题与问题:进行N次实验,每次实验的结果符合伯努利分布,成功的概率为p(未知),N次实验总的成功(平均)次数为m,那么p是多少?是相同的。设随机变量A表示N次伯努利实验成功的次数,Ai表示第i次实验的结果,P(Ai=0)=p,那么A=A1+A2+... 。m=E(A)=E(A1)+E(A2)+.. 。而且E(Ai)=p,所以很容易就求出p来了。

 

6,

在高中时,这种题太小菜了!!可惜我已经高中过去七八年了~~~

随机事件A: 小王和大王在同一堆

随机事件Ai:小王和大王在第i堆, i=1,2,3 。 A1,A2和A3互斥

P(A)=P(A1+A2+A3)=P(A1)+P(A2)+P(A3)=P(大王在第一堆,小王在第一堆)+P(大王在第二堆,小王在第二堆)+P(大王在第三堆,小王在第三堆)

=P(大王在第一堆|小王在第一堆)P(小王在第一堆)+P(大王在第二堆|小王在第二堆)P(小王在第二堆)+P(大王在第三堆|小王在第三堆)P(小王在第三堆)

=3*(17/53)*(1/3)

=17/53

 

 

----------------------------------------------------------------------------------------------------

1, 给你一个数组,设计一个既高效又公平的方法随机打乱这个数组

2,有一苹果,两个人抛硬币来决定谁吃这个苹果,先抛到正面者吃。问先抛这吃到苹果的概率是多少?

3,快速生成10亿个不重复的18位随机数的算法(从n个数中生成m个不重复的随机数)

 

Solution1:

1,对于A[i],i=0,1,2,...N,随机在数组A[i,i+1,..N]中挑选一个数字交换到A[i]。

为什么这么做会随机?

证明算法随机,只需证明每个数字分配到每个位置的概率是相等的。

易得,数组0-N位置的任意一个数字到位置0的概率都是1/n

到位置1的概率是(1-1/n)*(1/(n-1))=1/n

解释:P(到位置1)=P(第一次调用随机算法的时候没交换到位置0)P(第二次到位置1|第一次调用随机算法的时候没交换到位置0)

到位置2的概率是(1-1/n)(1-1/(n-1))(1/n-2)=1/n

...

2,A表示随机事件先抛的人吃到苹果,那么

i表示先抛的人一共抛了的次数,上面的式子可以求出,P(A)=2/3

3,

 

================================

问题1

每次抛硬币出现正反两面的可能性都是1/2,那么连续出现两次正面的期望是什么

  答:

设期望为E,那么E等于每个可以掷出连续两次正面的次数乘以其概率的和。考虑第一次和第二次掷出的结果,若第一次结果为,第二次结果为,那么结果是1/4*2 
第一次结果为,第二次结果为,那么前两次都白掷了,那么结果是1/4*2+E); 
第一次结果为,那么第一次白掷了,那么结果是1/2*1+E); 
因此求总和:E=1/4*2+1/4*2+E+1/2*1+E),最后结果E=6

 

假设有一个硬币,抛出字(背面)和花(正面)的概率都是0.5,而且每次抛硬币与前次结果无关。现在做一个游戏,连续地抛这个硬币,直到连续出现两次字为止,问平均要抛多少次才能结束游戏?注意,一旦连续抛出两个“字”向上游戏就结束了,不用继续抛。
上面这个题目我第一次见到是在pongba的TopLanguage的一次讨论上,提出问题的人为Shuo Chen,当时我给出了一个解法,自认为已经相当简单了,先来考虑一下抛硬币的过程:首先先抛一枚硬币,如果是花,那么需要重头开始;如果是字,那么再抛一枚硬币,新抛的这枚如果也是字,则游戏结束,如果是花,那么又需要重头开始。根据这个过程,设抛硬币的期望次数为T,可以得到关系:
  T = 1 + 0.5T + 0.5( 1 + 0.5 * 0 + 0.5T) 
解方程可得到 T = 6。

或者根据公式,需要连续抛出n个字的一般情形,结果相当简洁:Tn = 2^(n+1) - 2,其中Tn为首次出现连续的n个字的期望投掷数。

 

posted @ 2015-10-13 21:57  止战  阅读(2228)  评论(0编辑  收藏  举报