|
发表于 2014-12-10 17:56:43
|
显示全部楼层
0到1消耗期望:N0=n0=1
1到2消耗期望:N1=n1*(1 / p)+(1 / p - 1 )*N0
前半部分为成功期望从1到2需要 M 次。后面为失败的M-1次需要重新从0到1
类推到3~4,然后把0~4加起来就可以了。
假设4到5消耗5个,概率依然0.2,那么期望消耗道具698个。
AS3.0 程序模拟:
var prob:Array=new Array();
prob[0]=1;
prob[1]=0.5;
prob[2]=0.25;
prob[3]=0.2;
prob[4]=0.2;
trace("概率为:\n"+prob[0]+"\t"+prob[1]+"\t"+prob[2]);
var num:Array=new Array();
num[0]=1;
num[1]=2;
num[2]=3;
num[3]=4;
num[4]=5;
trace("消耗为:\n"+num[0]+"\t"+num[1]+"\t");
var Max:int=5;
var cishu:int=90000;
var leiji:int=0;
for(var i:int=0;i<cishu;i++){
leiji+=Jisuan();
}
trace("\n最终结果:"+leiji/cishu);
function Jisuan():int {
var nowLev:int = 0;
var res:int=0;
while(nowLev<Max){
res+=num[nowLev];
var random:Number=Math.random()*1;
if(random>prob[nowLev]){
if(nowLev>0) nowLev--;
} else nowLev++;
}
return res;
}
概率为:
1 0.5 0.25
消耗为:
1 2
最终结果:695.5824111111111 |
|