这是我在网易游戏策划第二轮面试中遇到的一道题目。
炉石传说的竞技场规则如下:每个玩家通过付费150金币或者12战网点获得一张门票,消耗门票开启一轮游戏,并和系统匹配到的其他竞技场玩家进行对战,每次胜利会使奖励升级,最多可以获得12场胜利后退出本轮游戏,如果此过程中失败三场,同样会退出。
通过计算玩家的平均胜场,可以平衡奖励的投放。
可惜我在面试时考虑的并不周全,现在重新做一下解答:
要解决这个问题,我们不妨进行以下两个假设: (1)每个玩家总是会匹配到胜场数和他一样的玩家。
(2)没有人提前退出。
在(1)假设的基础上,胜场数和败场数是一样的,我们可以认为玩家在任何胜场数的时候,获得下一场游戏的玩家都是上一场玩家人数的一半。例如,每当两个3胜的玩家对战,获得4胜的必然只有其中一个。
以下的计算中,用计算概率的方法进行了计算,需要注意,此处的概率并不是指某一玩家个体下一场获胜的概率,而是全部玩家中获胜的玩家的比例。
玩家进行了m场游戏,败场数为n(n<3)的概率为:
P(n,m)=C (n,m)/2^m;
而当n=3时,第三场的失败必然是最后一场,也就是概率为:
P(3,m)=P(2,m-1)/2;
那么玩家以N(N<12)场胜利结束游戏的时候,概率为:
P(N)=P(3,N+3)=P(2,N+2)/2;
12胜的情况分为12胜0败,12胜1败,12胜2败,概率为:
P(12)=(P(0,11)+P(1,12)+P(2,13))/2;
好了,所有情况总结完毕;
概率的计算结果如下: 0 | 12.5 | 1 | 18.75 | 2 | 18.75 | 3 | 15.625 | 4 | 11.71875 | 5 | 8.203125 | 6 | 5.46875 | 7 | 3.515625 | 8 | 2.197265625 | 9 | 1.3427734375 | 10 | 0.8056640625 | 11 | 0.47607421875 | 12 | 0.64697265625
| 对胜场求数学期望:E=Σ(P(N)*N)=2.99157714844。
实际上,这和我们平时的感觉非常相似,也就是“三胜不亏”,而且一个惊人的事实是12胜的玩家实际上是要比11胜的玩家多的。
但是回到我们的假设(2),由于一部分玩家会因为各种原因放弃自己的套牌,在到达三败之前退场,这就导致实际的平均胜场可能是低于3场的,因为一些玩家本可以从他们身上取得胜利。
|