• 程序员面试中常见的概率相关面试题[转]


    转自http://www.iprogram.cn/index/201403/9035.htm

    程序员面试中常见的概率相关面试题

    在笔记题中概率相关的数学题也有部分编程题出现的还是挺多的。概率在生活中的应用较多同时也可以综合考查面试者的思维能力、应变能力、数学能力。在这里整理了一些概率相关的笔试题和大家分享此文不涉及编程题都是一些和生活相关且很有趣的概率题。所有的分析都和背景颜色设置一样了大家先思考然后选中就可以看到分析了。

    题目1

    假设你参加了一个游戏节目现在要从三个密封的箱子中选择一个。其中两个箱子是空的另一个箱子里面有大奖(你偶像的签名^^)。你并不知道奖在哪一个箱子里但主持人知道。游戏节目的主持人先要你选择一个箱子接着他把你没有选的空箱子打开以证明它是空的。最后主持人给你换箱子的机会你可以把你所选择的箱子换成另一个没有打开的箱子。此时你该不该换箱子?

    分析:

    要相信直觉。你当然应该换箱子!我们把三个箱子编号A,B,C并假设你选的是A箱。显然奖品在A里的概率是1/3在B或C里的概率是2/3。B和C可能有一个是空的也可能两个都是空的。因此当你选择了A箱后主持人很可能会打开B箱或C箱以显示里面是空的。在这种情况下主持人的举动并不会影响奖品在A箱里面的机会。我们假设主持人打开了B箱以告诉你它是空的。现在A箱有奖品的概率还是1/3B箱里面有奖品的概率是0因此C箱里面有奖品的概率是2/3。在这种情况下你应该换到C箱因为它使你赢的机会提高了1倍!

    题目2

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

    分析:

    我首先想到的就是把 第一次抛到正面的概率 + 第二次抛到的概率 + …..+无穷多次当然后面的概率几乎为0了。 结果就是 P = 1/2 + 1/8 + 1/32+ …… 最后的结果就是 P = 2/3 . 这个计算也不难其实就是等比数列比为1/4. 简单的无穷级数 (1/2) / (1-1/4) = 2/3. 1/(1-x)^2=1+2x+3x^2+4x^3+5x^4+… (-1<x<1)< p="">

    还有一个别人的分析:给所有的抛硬币操作从1开始编号显然先手者只可能在奇数(1,3,5,7…)次抛硬币得到苹果而后手只可能在偶数次(2,4,6,8…)抛硬币得到苹果。设先手者得到苹果的概率为p第1次抛硬币得到苹果的概率为1/2在第3次(3,5,7…)以后得到苹果的概率为p/4(这是因为这种只有在第1次和第2次抛硬币都没有抛到正面(概率为1/4=1/2*1/2)的时候才有可能发生而且此时先手者在此面临和开始相同的局面)。所以可以列出等式p=1/2+p/4p=2/3。

    题目3

    条长度为l的线段随机在其上选2个点将线段分为3段问这3个子段能组成一个三角形的概率是多少?

    分析:

    设随机选取的两个数为xy并令y>x则把长度为1的线段截得的三段长度为x y-x 1-y根据三角形两边和大于第三边以及两边之差小于第三边的定理可以列出方程组
    y>1-y; x<1-x; x+(1-y)>y-x;
    即x<1/2; y>1/2; y>x+1/2;
    画图可以算得概率为1/8;(线性规划的思想)

    gg

    题目4

    世界上每十万人中就有一人是艾滋病患者。艾滋病的检测目前已经很准确但并非万无一失。它的检测准确率是99%假设你刚去做完艾滋病检验得到的了检测报告结果….是阳性!你会绝望或昏倒吗?或者说你会担心到什么程度?

    分析:

    你大可不必那么担心因为你几乎可以确定没有得艾滋病。什么?检测是阳性还几乎可以确定没有艾滋病?!是的为了说明这一点假设有100万人和你做了同样的检验。在这100万人中得病的会有10个没有得病的有999990个。当这些人接受检验时9~10个人患有艾滋病的人会呈现阳性反应另外999990个没有得病的人则会有1%出现错误的阳性反应换算成人数大概是1万人。也就是说大约10000个阳性诊断中实际只有10个左右是真正患者。因此绝大多数所呈阳性的反应都是误诊。当你得到阳性的检测结果时真正得艾滋病的机会大概只有千分之一。(当然如果你在检测之前做了很可能感染艾滋病的事那就另当别论了)

    题目5

    有一对夫妇先后生了两个孩子其中一个孩子是女孩问另一个孩子是男孩的概率是多大?

    答案是2/3.两个孩子的性别有以下四种可能:(男男)(男女)(女男)(女女)其中一个是女孩就排除了(男男)还剩三种情况。其中另一个是男孩的占了两种2/3. 之所以答案不是1/2是因为女孩到底是第一个生的还是第二个生的是不确定的。

    题目6

    一个国家人们只想要男孩每个家庭都会一直要孩子只到他们得到一个男孩。如果生的是女孩他们就会再生一个。如果生了男孩就不再生了。那么这个国家里男女比例如何?

    分析:

    一开始想当然的以为男多女少毕竟都想要男孩。但是注意这句话“如果生了男孩就不再生了”一个家庭可能有多个女孩只有一个男孩。再仔细分析我们来计算期望值只用计算一个家庭就行了。设一个家庭男孩个数的期望值为S1女孩为S2.

    根据题目条件男孩的个数期望值S1=1这个是不用计算了。主要计算S2

    一个家庭的孩子数量可以为:1,2,3,4,5….. 对应的的男女分布为: “男”,”女男”,”女女男”,”女女女男”,”女女女女男”…

    对应的概率分布为 1/2, 1/4, 1/8, 1/16, 1/32 。其中女孩的个数分别为 0,1,2,3,4……

    因此 S2=0*1/2 + 1*1/4 + 2*1/8 + 3*1/16 + 4*1/32 + ………

    可以按照题目2用级数求也可以用错位相减法:S2=1/4+2/8+3/16+4/32+… 两边乘以2,得: 2*S2=1/2+2/4+3/8+4/16+5/32+..

    两个式子相减得 S2=1/2+1/4+1/8+1/16+1/32+…=1. 所以期望值都为1男女比例是一样的。

    ACM之家原创链接:http://www.acmerblog.com/interviews-about-probability-5359.html 欢迎转载和评论

  • 相关阅读:
    Codeforces Gym101502 K.Malek and Summer Semester
    Codeforces Gym101502 J-取数博弈
    Codeforces Gym101502 I.Move Between Numbers-最短路(Dijkstra优先队列版和数组版)
    Codeforces Gym101502 H.Eyad and Math-换底公式
    Codeforces Gym101502 F.Building Numbers-前缀和
    Codeforces Gym101502 B.Linear Algebra Test-STL(map)
    Codeforces Gym101502 A.Very Hard Question
    bzoj 1699: [Usaco2007 Jan]Balanced Lineup排队 分块
    Codeforces Round #250 (Div. 2) D. The Child and Zoo 并查集
    Codeforces Round #250 (Div. 2) A, B, C
  • 原文地址:https://www.cnblogs.com/jinee/p/4420212.html
Copyright © 2020-2023  润新知