逻辑思维案例题(概率类)

1. 不使用中间变量交换两个数值

假设: a=10, b=20

1.1 四则运算

1.1.1 加减法

适用于int与float,但在处理float时有可能出现精度损失。

a=a+b;
b=a-b;
a=a-b;

1.1.2 乘除法

适用于int与float,但在处理float时有可能出现精度损失,且b!=0

a=a*b;
b=a/b;
a=a/b;

这两种方法都不会产生溢出。以加减法为例,第一步的加法运算可能会造成溢出,但其所造成的溢出会在后边的减运算中被溢出回来。

1.2 位异或运算

异或运算无法完成浮点型变量的交换,只适用于int。

^ 将十进制转化为二进制0和1,进行位操作。

int a=10,b=12; //a=1010^b=1100;
a=a^b; //a=0110^b=1100;
b=a^b; //a=0110^b=1010;
a=a^b; //a=1100=12;b=1010;

1.3 使用指针

int *pa=&a;
int *pb=&b;
a=pb;
b=pa;

2. 抛硬币问题

2.1 两人抛硬币

先抛出正面的人获胜,则第一个人A获胜的概率=2/3

抛第一轮(两次):  A胜=1/2,B胜=1/2 * 1/2 =1/4,无人获胜=1/2 * 1/2 =1/4。

A可能赢在第1,3,5,7,... 次,而且每次赢必然是前几次抛硬币结果都是反面,最后一次为正。

因为抛硬币为独立时事件,所以

P(A)=\frac{1}{2}+\frac{1}{2^{3}}+\frac{1}{2^{5}}+ ...=\sum_{n=0}^{\rightarrow }(\frac{1}{2})^{2n+1}=\sum_{n=1}^{\rightarrow }(\frac{1}{2})^{2n-1}=\frac{2}{3}

等比数列求和:

S_{n}=na_{1} (q=1)

S_{n}=a_{1}*\frac{1-q^{n}}{1-q} =\frac{a_{1}-a_{1}q^{n}}{1-q}=\frac{a_{1}-a_{n}q}{1-q} (q!=1)

p_{1}+p_{2}=1

p_{1}=\frac{1}{2}+\frac{1}{2}p_{2}

只有第一个人没中的情况下,第二个人才抛硬币,所以A赢的概率是B的两倍。

2.2 K个人抛硬币

第一个人获胜的概率?

如果是3个人,则第一个人赢在第1,4,7,11,...次,则在级数中对应的项次由两个人时的2n+1变为3n+1(n从0开始),同理可得k个人时为kn+1。

这时获胜的概率为

P(A)=\sum_{n=0}^{\rightarrow }(\frac{1}{2})^{kn+1}

=\frac{1}{2}*(\frac{1}{2^{k}})^{n}

其中 a_{1}=\frac{1}{2}, q=2^{k}

=\frac{1}{2}*\frac{1-2^{kn}}{1-2^{k}}

=lim_{n \to }\frac{1}{2}*\frac{1-2^{kn}}{1-(\frac{1}{2})^{k}}

=\frac{1}{2}*\frac{1}{1-(\frac{1}{2})^{k}}

=\frac{2^{k-1}}{2^{k}-1}

当k=3时,P(A)=4/7

3. 掷骰子问题

3.1 两人掷骰子

先掷出6点的人获胜,则第一个人获胜的概率=6/11

易知第一个人可能赢在第1,3,5,7,...,2n+1次。

11

=\sum_{i=0}^{n}\frac{1}{6}*(\frac{5}{6})^{2n}

=\lim n_{\rightarrow }\frac{1}{6}*\frac{1-(\frac{5}{6})^{2n}}{1-(\frac{5}{6})^{2}}

=\frac{1}{6}*\frac{1}{1-\frac{25}{36}}

=\frac{6}{11}

3.2 掷t面骰子

先掷出t点的人获胜,则第一个人获胜的概率=t/(2t-1)

P(A)=\frac{1}{t}+(\frac{t-1}{t})^{2}*\frac{1}{t}+ ...

=\sum_{n=0}^{\rightarrow }\frac{1}{t}*(\frac{t-1}{t})^{2n}

=\frac{1}{t}*\frac{1}{1-(\frac{t-1}{t})^{2}}

=\frac{t}{2t-1}

3.3 K个人掷t面骰子

先掷出t点的人获胜,则第一个人获胜的概率?

P(A)=\frac{1}{t}+(\frac{t-1}{t})^{k}*\frac{1}{t}+ ...

=\sum_{n=0}^{\rightarrow }\frac{1}{t}*(\frac{t-1}{t})^{kn}

=\frac{1}{t}*\frac{1}{1-(\frac{t-1}{t})^{k}}

=\frac{t^{k-1}}{t^{k}-(t-1)^{k}}

4. 木棒问题

4.1 折为两段

随机在中间选一点,将木棒折断。

(1)短的那一截平均有多长?

若点取在(0,1/2)上,则短的那一截长度为x,若取在(1/2,1)上短的那一截长为1-x。

\int_{0}^{\frac{1}{2}}xdx+\int_{\frac{1}{2}}^{1}(1-x)dx=\frac{1}{4}

(2) 长的那一截平均有多长?

\int_{0}^{\frac{1}{2}}(1-x)dx+\int_{\frac{1}{2}}^{1}xdx=\frac{3}{4}

(3) 短的一截与长的一截的长度之比的平均是多少?

\int_{0}^{\frac{1}{2}}\frac{x}{1-x}dx+\int_{\frac{1}{2}}^{1}\frac{1-x}{x}dx =\int_{0}^{\frac{1}{2}}(-1+\frac{1}{1-x})dx+\int_{\frac{1}{2}}^{1}(\frac{1}{x}-1)dx=2ln2-1

4.2 折为三段

(1) 把一根木棒分成三段,求能拼成一个三角形的概率?(1/4)
假设木棒长度为1,其中两段分别为x,y,则第三段为1-x-y。且

0<x<1,0<y<1,0<1-x-y<1;

=>

0<x<1,0<y<1,0<x+y<1;

若要使这三段能构成一个三角形(任意两边之和大于第三边)。得

x+y>1-x-y,x+1-x-y>y,y+1-x-y>x;

=>

0<x<1/2,0<y<1/2,1/2<x+y<1;

由线性规划得: P=s1/s2=(1/2 * 1/2 * 1/2)/(1/2 * 1 * 1)=1/4

(2)变形-- 在圆周上任取三点构成锐角三角形的概率?(1/4)

假设这三个点为A、B、C,当A、B、C同时位于一个半圆内时,三角形必然是直角三角形或钝角三角形,所以要组成锐角三角形,此三点必须不在同一个半圆内。

若为锐角三角形,则三个角必须小于90度。

假设圆半径为1,则周长为2pai。又知:90度角对应的弧为半圆,长为pai。

记弧AB=x,弧AC=y,弧BC=z;则有:

0<x<pai,0<y<pai,0<2pai-x-y<pai  (pai<x+y<2pai);

又因为

0<x<2pai,0<y<2pai,0<2pai-x-y<2pai  (0<x+y<2pai);

进而转化为折木棒问题进行求解。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值