用数据说话------英雄乱斗

本楼借助数理化之力评价英雄乱斗。代码镇楼


楼主 天空巨炮9  发布于 2017-03-06 18:24:00 +0800 CST  


楼主 天空巨炮9  发布于 2017-03-06 18:27:00 +0800 CST  
100G=1包
楼主个人把1包按60尘计算。 这是我自己近一段时间开包凭感觉出来的数据 有异议可以说。
由于考虑较优情况,金橙先按3200来算。
所以,把所有奖励换算成尘的话:
0:60
1:120
2:180
3:240+120+1.2*60=432
4:300+190+1.9*60=604
5:360+220+2.2*60=712
6:820
7:928
8:1036
9:1600
10:4800
11:8128
12:14360

楼主 天空巨炮9  发布于 2017-03-06 18:35:00 +0800 CST  


有了上面的结论把代码改写一下。
程序首先输入你的胜率(玩家平均一定是0.5):
然后11-13行计算每一挡胜率的数量。
14-19行输出中途经过每一挡胜率的人数(你们可以不管)
20-22行输出0-12胜的概率:
23-26行计算你的收益期望。

楼主 天空巨炮9  发布于 2017-03-06 18:41:00 +0800 CST  


首先看全体玩家。
从上到下的1-13行分别是玩家获得0-12胜的概率。可以看到:
1.有50%的玩家会获得0-2胜的奖励
2.12胜的概率为0.647%,然而精确数据其实是53/8192
3.总的来说玩家是赔钱的(552.427<1000*0.6)

楼主 天空巨炮9  发布于 2017-03-06 18:45:00 +0800 CST  
那么问题来了 对于能上传说能冲前百的人来说,你的胜率可能不止这么点?
考虑到进去的大多不是菜鸡 超高胜率不太可能的情况
我们把玩家胜率分成这么几档:
1.45% 运气不佳或技术一般的玩家
2.50% 大众玩家//这档已经算过了
3.52% 有点实力的玩家
4.55% 比较优秀的玩家
5.60% 非常出众的玩家
6.65% 大神

楼主 天空巨炮9  发布于 2017-03-06 18:49:00 +0800 CST  
45%胜率玩家:


结论:
1.74.3%概率赔钱(0-3win)
2.获得尘的期望是388.14(对比普通的600)


不推荐进入。

楼主 天空巨炮9  发布于 2017-03-06 18:55:00 +0800 CST  


52%胜率玩家:
1.赔钱的概率为61%
2.期望相比平均水平高出了一个卡包不到


评价:如果你比较勇敢/有信心,可以考虑试一试;不去也稳妥。且如果你第一把赔钱了,在心态不爆炸的情况下建议尝试第二把。

楼主 天空巨炮9  发布于 2017-03-06 18:59:00 +0800 CST  


55%胜率玩家:
1.赔钱的概率为55.5%(依然高出50%,
2.期望收益比较可观。


评价:这一档胜率的玩家多半是传说或快要传说的人,不是特别怂就去吧。

楼主 天空巨炮9  发布于 2017-03-06 19:04:00 +0800 CST  



60%+玩家:
一句话: 富贵险中求。

楼主 天空巨炮9  发布于 2017-03-06 19:09:00 +0800 CST  
补充两个结论,也是电脑算的,不多解释:
1.如果你的胜率>51.05%,你的期望收益将高于投入的1000金币。(前提你认为你还是需要这些奖励的)
2.如果你的胜率>57.86%,你的赚钱概率将大于赔钱概率。

楼主 天空巨炮9  发布于 2017-03-06 19:16:00 +0800 CST  
以上就是英雄乱斗数据层面的情况。估计自己胜率的建议:
1.自己最近在10级以上的对战中打出来的胜率为基础
2.如前面所说,非常厉害的人物不一定会需要这个奖励(胜率++)
3.0-3胜也不是没可能遇到金币号/萌新(胜率++)
4.合理考虑自己的心理,会不会受对手嘲讽和烧绳子影响,会不会受自己2连败影响


祝各位好运!
(完)

楼主 天空巨炮9  发布于 2017-03-06 19:22:00 +0800 CST  
自顶

楼主 天空巨炮9  发布于 2017-03-06 19:35:00 +0800 CST  
自顶

楼主 天空巨炮9  发布于 2017-03-06 19:43:00 +0800 CST  
顺便一提,我自己多半是不打,如你们所见 我还要准备信竞

楼主 天空巨炮9  发布于 2017-03-07 15:34:00 +0800 CST  
且慢。。。楼主刚才的代码有一些小问题 我删了重发一下 这次会顺便加上说明

楼主 天空巨炮9  发布于 2017-03-07 17:30:00 +0800 CST  
#include <bits/stdc++.h>
using namespace std;
double a[13][4]={0};
double b=0,ch,tot=0,c[13],l,r;
//a[i][j]表示赢i盘,输j盘的情况出现的概率,0<=i<=12,0<=j<=3
//b一开始是你输入的概率,后面用来二分算我补充的两个问题
//ch是你输入的一包=多少尘
//tot计算用,c[i](0<=i<=12)为 i胜滚出的奖励价值,以尘计算,l,r用来二分
int main()
{
freopen("f:\output.txt","w",stdout);//输出文件到达f:\output.txt
scanf("%lf",&b);scanf("%lf",&ch);
a[0][0]=1;
for (int i=0;i<=12;++i)
{
if (i<=2) c[i]=(ch*(i+1));
if (i==3)c[i]=(ch*(i+1))+120*(1+ch/100);
if (i>=4&&i<=8) c[i]=ch*(i+1)+(70+i*30)*(1+ch/100);
if (i==9)c[i]=(ch*16)+400*(1+ch/100);
if (i==10) c[i]=c[i-1]+3200;
if (i==11) c[i]=c[i-1]+3200+80*(1+ch/100);
if (i==12) c[i]=ch*50+9600+1100*(1+ch/100);
}//计算每一胜的奖励获得的尘数
for (int i=0;i<=11;++i)
for (int j=0;j<=2;++j)
a[i+1][j]+=a[i][j]*b,a[i][j+1]+=a[i][j]*(1-b);
//i-j在进行一盘后要么多一胜要么多一负,i+1 - j的概率加i-j*胜率,i - j+1 的概率加i-j*(1-胜率)
for (int i=0;i<=11;++i)
printf("%.5lf\n",a[i][3]);
printf("%.5lf\n",a[12][0]+a[12][1]+a[12][2]);
//输出每一种胜场数的概率
for (int i=0;i<=11;++i)
tot+=a[i][3]*c[i];
tot+=(a[12][0]+a[12][1]+a[12][2])*c[12];
printf("%.3lf\n",tot);
//输出期望收益
//part1
l=0,r=1;
while (l<=r-0.0001)
{
b=(l+r)/2;
memset(a,0,sizeof(a));tot=0;
a[0][0]=1;
for (int i=0;i<=11;++i)
for (int j=0;j<=2;++j)
a[i+1][j]+=a[i][j]*b,a[i][j+1]+=a[i][j]*(1-b);
for (int i=0;i<=11;++i)
tot+=a[i][3]*c[i];
tot+=(a[12][0]+a[12][1]+a[12][2])*c[12];
//这一段与前面是相同的
if (tot>=ch*10) r=b;else l=b;
//判断胜率为b时期望收益有没有大于投入,是则胜率小于b,否则胜率大于b
}
printf("%.5lf\n",(l+r)/2);
l=0,r=1;
while (l<=r-0.0001)
{
b=(l+r)/2;
memset(a,0,sizeof(a));tot=0;
a[0][0]=1;
for (int i=0;i<=11;++i)
for (int j=0;j<=2;++j)
a[i+1][j]+=a[i][j]*b,a[i][j+1]+=a[i][j]*(1-b);
int i=0;
while(c[i]<=ch*10)
tot+=a[i][3],i++;
if (tot>=0.5) l=b;else r=b;
//判断胜率为b时期望赚的概率有没有大于0.5,是则胜率小于b,否则胜率大于b
}
printf("%.5lf\n",(l+r)/2);
fclose(stdout);
}

楼主 天空巨炮9  发布于 2017-03-07 17:40:00 +0800 CST  
输出说明:
1-13行分别为0-12胜出现的概率
14行为期望收益
15行为期望收益大于等于投入时胜率最小值
16行为期望赚的概率大于0.5时胜率最小值

楼主 天空巨炮9  发布于 2017-03-07 17:47:00 +0800 CST  
样例输入:
0.5 60
样例输出:
0.12500
0.18750
0.18750
0.15625
0.11719
0.08203
0.05469
0.03516
0.02197
0.01343
0.00806
0.00476
0.00647
552.427
0.51053
0.57858

楼主 天空巨炮9  发布于 2017-03-07 17:47:00 +0800 CST  
样例输入:
0.5 60
样例输出:
0.12500(和谐)(和谐)(和谐)(和谐)(和谐)(和谐)(和谐)(和谐)
0.18750(和谐)(和谐)(和谐)(和谐)(和谐)(和谐)
0.18750(和谐)
0.15625(和谐)
0.11719(和谐)
0.08203(和谐)
0.05469(和谐)
0.03516(和谐)
0.02197(和谐)
0.01343(和谐)
0.00806(和谐)
0.00476(和谐)
0.00647(和谐)
552.427(和谐)
0.51053(和谐)
0.57858(和谐)

楼主 天空巨炮9  发布于 2017-03-07 17:48:00 +0800 CST  

楼主:天空巨炮9

字数:4090

发表时间:2017-03-07 02:24:00 +0800 CST

更新时间:2017-04-12 17:01:39 +0800 CST

评论数:367条评论

帖子来源:百度贴吧  访问原帖

 

热门帖子

随机列表

大家在看