分享
点赞 收藏
【明日方舟】用代码探究明日方舟6星保底机制

0 · 发布于 2020-11-05 21:53:17

用视频模拟抽卡,过一把手瘾! https://www.bilibili.com/video/av56043480/ 100连能出几个六星?传送门: https://b23.tv/av54873561 总结一下: 大约50%的博士在35次之前抽到了6星 大约90%的博士在60次之前抽到了6星 大约99.8%的博士在70次之前已经抽到了6星 然后本次实验的这一亿个博士里,在85之前全都抽到了6星 没有一个人成功吃到了99次的保底。 改正一下:最后一条是已经抽到六星干员人数的占比 以下是相关代码,感兴趣的博士们直接拿走康康奥! public class Arknights { public static void main(String [] args){ int n = 100000000;//需要测试的人数 int times[] = new int[100];//用于存放每个第几次抽中的人数 double probability[] = new double[100];//计算概率 int sum = 0;//人的总数用于核对算法 boolean get6 ; for(int i = 1;i <= n ;i++){ int j = 0; get6 = false; while (get6 == false){ //抽一次 int get = (int)(1+Math.random()*(50-1+1));//生成1到50的随机数 j++; if(j <= 50){ if(get == 1){//1/50的概率也就是2% times[j]++; get6 = true; } }else{ if(get <= 1+(j-50)){//每次没有抽中都会加2% times[j]++; get6 = true; } }//抽一次的行为结束 } } for(int i = 1;i < times.length;i++){ sum += times[i]; probability[i] = (double)times[i]/(double) n; System.out.println("第"+i+"次抽中的人数: "+times[i]+" 占比为:"+probability[i] + " 目前已经抽中6星干员的人数: "+(double)sum/(double) n); } System.out.println("总人数为"+sum); } }
weixin_38407709
0粉丝
关注

0条评论

还能输入1000个字符