家园守卫战 计算机程序告诉你年兽的概率
刚刚好放假~于是做了个程序计算年兽的概率~用了三天预备数学知识,编程大概一天左右,才100多行,用小数据验算过,应该不会错。
假设打了100波的年兽(大概19天,一天60波,10波一次,总共114次)。10波一次没有观察过,反正有我就打了,不知道大家怎么觉得。
假设FT的字的确是随机出现的,每个字都是1/4的概率。这很重要,因为FT可以来个,字拿到越多,继续拿到概率越高。
然后是数学题:随机取4个球,有放回,取n次,求取到a1球b1次,a2球b2次,a3球b3次,a4球b4次,的概率。
得到概率:P=C(a1,n)X(1/4)^a1X(3/4)^(n-a1)XC(a2,n-a1)X(1/3)^a2X(2/3)^(n-a1-a2)XC(a3,n-a1-a2)X(1/2)^a3X(1/4)^(n-a1-a2-a3)
这个公式是程序计算的基础。
然后穷举出所有可能的情况,每种情况算出概率并且相加。
例如:要算100个字,每个字至少16个,大约有9100+种不重复的可能性,然后概率求和,得到约95.5722%。
也就是说如果你打到了100个字,那么拿到最大的礼包的概率为95.5722%。
如果是每天打40波左右,那么整个活动期间大概打80波,拿到大礼包的概率剩下54.6371%。
如果是打算100个字中每种拿到至少22个,那就是第三和第一礼包,27.97614%。
如果是算从一开始就打满的话,大概可以拿到少于120个字,那么拿到第一礼包的概率为99.7747%;拿到每种至少22字的概率为86.8988%,拿到26字的概率为38.5493%
总体上说,打满的玩家基本可以拿到大礼包,每天都比较关注的玩家有一半机会拿到大礼包。
没考虑海豚~
得出结论,打得紧的玩家别去买礼包,自然打够100波也不算难,不到半成的几率不出大礼包。打不禁的到最后看情况吧,貌似很多人为了字去买礼包了。
假设打了100波的年兽(大概19天,一天60波,10波一次,总共114次)。10波一次没有观察过,反正有我就打了,不知道大家怎么觉得。
假设FT的字的确是随机出现的,每个字都是1/4的概率。这很重要,因为FT可以来个,字拿到越多,继续拿到概率越高。
然后是数学题:随机取4个球,有放回,取n次,求取到a1球b1次,a2球b2次,a3球b3次,a4球b4次,的概率。
得到概率:P=C(a1,n)X(1/4)^a1X(3/4)^(n-a1)XC(a2,n-a1)X(1/3)^a2X(2/3)^(n-a1-a2)XC(a3,n-a1-a2)X(1/2)^a3X(1/4)^(n-a1-a2-a3)
这个公式是程序计算的基础。
然后穷举出所有可能的情况,每种情况算出概率并且相加。
例如:要算100个字,每个字至少16个,大约有9100+种不重复的可能性,然后概率求和,得到约95.5722%。
也就是说如果你打到了100个字,那么拿到最大的礼包的概率为95.5722%。
如果是每天打40波左右,那么整个活动期间大概打80波,拿到大礼包的概率剩下54.6371%。
如果是打算100个字中每种拿到至少22个,那就是第三和第一礼包,27.97614%。
如果是算从一开始就打满的话,大概可以拿到少于120个字,那么拿到第一礼包的概率为99.7747%;拿到每种至少22字的概率为86.8988%,拿到26字的概率为38.5493%
总体上说,打满的玩家基本可以拿到大礼包,每天都比较关注的玩家有一半机会拿到大礼包。
没考虑海豚~
得出结论,打得紧的玩家别去买礼包,自然打够100波也不算难,不到半成的几率不出大礼包。打不禁的到最后看情况吧,貌似很多人为了字去买礼包了。