[모두의마블/통계/코딩] 현자의 마법진 8개 모으기 위한 평균 다이아 갯수
2022. 4. 27. 17:29
반응형
모두의 마블 이벤트에 참여하기 위해서는 다이아가 얼마나 필요할지 계산하기 너무 애매했다.
그래서 내가 함 코딩으로 통계를 내보았다.
현자의 마법진 이벤트 상세 페이지 : https://cafe.naver.com/momakakao/13007245
현자 마법진 8개를 모으면 원하는 행템을 얻을 수 있는 이벤트인데 확률을 참조로 평균 다이아가 몇개를 소비할지 계산해보았는데 1000번 반복 통계를 내보았더니 약 25000개 +- 1000개 정도는 필요했다.
더 테스트를 원하시면 이 코드를 활용하여 통계를 내보자 ! 자세한 설명은 소스코드 주석으로 달아놨다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
import java.util.Random;
public class Main3 {
public static void main(String[] args) {
Random ran = new Random();
int ACount; // A마석
int SPlusMagicCount; // S+현자의 마법진 갯수
int SupertotalSpendDia; // 슈퍼 프리미엄 행템 뽑기에 사용된 다이아 갯수
int SPlusPercentage; // A 마석 교환으로 S+ 현자 마법진 나올 확률
int averageDiaSpend = 0; // 평균적으로 다이아 소모 비용
for (int i = 0; i < 1000; i++) { // 1000번 반복
// 초기화
ACount = 0;
SPlusMagicCount = 0;
SupertotalSpendDia = 0;
int SuperPercentage ; // 슈퍼 행템 뽑기에서 마석 나올 확률
while(SPlusMagicCount<8) { // 현자의 마법진 8개를 모아야 하는 경우
SupertotalSpendDia += 1000; // 슈퍼 행템 뽑기에 다이아 사용
for (int j = 0; j < 10; j++) { // 슈퍼 행템 10개 뽑기
SuperPercentage = ran.nextInt(100)+1;
if(SuperPercentage <=22) { // 슈퍼 행템 뽑기에서 마석 나올 확률 : 22%
ACount ++; // 마석 획득
}
}
while(ACount>6) { // 마석이 6개 이상이면 6개를 제거하고 S+ 현자 마법진을 뽑는다.
ACount -= 6;
SPlusPercentage = ran.nextInt(10)+1;
if(SPlusPercentage<=9) { // A 마석 교환으로 S+ 현자 마법진 나올 확률 90%
SPlusMagicCount++; // S+ 현자 마법진 획득
}
}
}
averageDiaSpend += SupertotalSpendDia;
}
averageDiaSpend /= 1000;
System.out.println("현자 마법진 8개를 모으기 위해서 소비한 평균 다이아 갯수 : "+averageDiaSpend);
}
}
|
cs |
반응형