0
从以上计算可以看出,虽然A命中率33%比B命中率50%低很多,但是先手优势明显
有了先手AB互射决斗中A的存活概率增加到11/21,略大于B存活的10/21
0
C存活的概率比较简单,A,B存活的概率计算起来复杂一些,
因为"AB互射A先射A存活的概率"和“AB互射B先射A存活的概率”是有差异的,A存在先手
但这两个概率的平均值是不分先后的统计概率,即1/3
0
第一轮,A最优的选择是放空枪让C射B,B一定射C,C没死一定射B
C存活的情况是第一轮没有被B射死的情况下第二轮没被A射死:1/2*2/3=1/3
B存活的情况是第一轮射死C的情况下,参与AB互射A先射而B存活
A存活的情况是“第一轮C被B射死的情况下参与AB互射A先射而A存活”加上“第一轮C没被B射死情况下A第二轮射死C”
假设AB互射A先射A存活的概率为X
A总的存活概率:1/2*X+1/2*1/3,
B总的存活概率:1/2*(1-X)
假设AB互射B先射A存活的概率是Y
那么(X+Y)/2=1/3
Y=2/3-X
A总的存活概率=1/2*X+1/2*1/3=1/3+2/3*(2/3-X),“AB互射A第一枪射死B的概率”加上“A第一枪没射死B而参与“AB互射B先射A存活””
以上方程解出X=11/21
所以,
A总的存活概率=1/2*X+1/2*1/3=3/7
B总的存活概率=1/2*(1-X)=5/21
C总的存活概率=1/3
存活概率的从大到小分别是:A(9/21)>C(7/21)>B(5/21)
0
从策略的角度来说,如果A射任意一人,都有把他射死的可能,A也就面临被活下来的人先手射自己的可能,所以,为了拿到先手,A必须要让B,C先火拼,B,C间死了一人后,自己就有先手了。由此推知,A一定要放空第一枪,以求取得绝对先手。
而B就没那么幸运了,B必须要射C,因为B对C的死亡威胁更大,如果被C拿到先手,C一定是先射死B的。
根据以上分析,则有:
1.B射死C,然后A先手与B互射
2.B没能射死C,然后C把B射死,于是A先手与C互射。
C的存活率最容易计算:即1/2 * 2/3 =1/3
B的存活率是:1/6*(1+1/3+(1/3)^2+...+(1/3)^n)=1/4
A的存活率是:1-1/3-1/4=5/12
0
如果A先杀C,那么存活概率只有0.36左右!
另上一帖应该是模拟了100000次!
0
支持 2楼
[引用原文已无法访问]
A先放空,等B、C决出胜负后杀C或B。
B先杀C(因C必先杀B),再杀A。
C一枪能杀一个,必先杀B,再杀A。
计算结果
A存活几率=0.41406
B存活几率=0.25101
C存活几率=0.33493
我用程序模拟10000次的结果
<html>
<body>
<script type="text/javascript">
{
document.write("<h1>算法</h1>");
document.write("<p>A先放空,等B、C决出胜负后杀C或B。</p>");
document.write("<p>B先杀C(因C必先杀B),再杀A。</p>");
document.write("<p>C一枪能杀一个,必先杀B,再杀A。</p>");
var alivenum=0;
var blivenum=0;
var clivenum=0;
var count = 100000
var n=count;
while(n>0)
{
n--;
var A=1;
var B=1;
var C=1;
var live=A+B+C;
while(live!=1)
{
if(A==1)
{
var t=Math.floor(Math.random()*3);
if(C==1&&live!=3)
{if(t<1)C=0;}
else if(B==1&&live!=3)
{if(t<1)B=0;}
}
if(B==1)
{
var t=Math.floor(Math.random()*2);
if(C==1)
{if(t<1)C=0;}
else if(A==1)
{if(t<1)A=0;}
}
if(C==1)
{
if(B==1)
{B=0;}
else if(A==1)
{A=0;}
}
live=A+B+C;
}
if(A==1){alivenum++;}
if(B==1){blivenum++;}
if(C==1){clivenum++;}
}
document.write("<p>计算结果</p>");
document.write("<p>A存活几率=",alivenum/count,"</p>");
document.write("<p>B存活几率=",blivenum/count,"</p>");
document.write("<p>C存活几率=",clivenum/count,"</p>"); }
</script>
</body>
</html>
0
这里有一个AB轮环射的概率加法问题。A死亡概率:放空7/12; 射B12.5/18;射C:13/18
0
这里有一个AB轮环射的概率加法问题。A死亡概率:放空12/18; 射B12.5/18;射C:13/18
0
问题的问法有点问题。
对A和B,第一轮最优选择是射杀c,c一发一中是确定性事件,灭了确定性才能够提高存活率。
A射C,中,1/3,B,A其后互射,多次反复后,B射杀A为大概率事件。
A射C,不中,2/3,其后B射C,中,1/2,A,B其后互射,多次反复后,B射杀A为大概率事件。
A射C,不中,2/3,其后B射C,不中,1/2,C射杀B。
A射C,中1/3,game over。
A射C,不中2/3,C射杀A。game over。
0
刚才推算有误
因为C一定选择射击B,所以A和B首轮都选择射击C,C首轮存活概率2/3*1/2=1/3
C首轮未死情况下选择射击B,B死了,其死亡概率为1-1/3=2/3
A第二轮选择射击C,C第二轮死亡概率1/3,则其存活率为1/3*2/3=2/9
A存活率为1-1/3-2/9=4/9