메달별 상품타갈 확률 구해봤습니다
Software
134 8 17
갑자기 궁금해져서 파이썬으로 대충 가독성 내다버리고서 코딩해다가
한번 메달별로 상품(음향기기)타갈 확률 계산해봤습니다
결과는 이렇습니다
다이아:48%
플래티넘: 31.5%
금: 19.8%
은: 13.7%
동: 7.5%
그냥 여러번 시행해서 구했는데
시행 횟수 백만번이니 그래도 꽤 믿을만 할겁니다
++)밸런스 잘맞네요
카양대군님 절반확률로 상품 ㄷㄷㄷㄷㄷ
근데 사실 제가 코드를 잘 짠건가 의심이...
제가 짜놓고도 헷갈릴정도로 가독성을 갖다 버려서말이죠
코드 (가독성 없음)
import random
BronzeWin=0
SilverWin=0
GoldWin=0
PlatinumWin=0
DiamondWin=0
DTW=0
PTW=0
GTW=0
STW=0
BTW=0
BronzeNum = 5
SilverNum = 4
GoldNum = 3
PlatinumNum = 2
DiamondNum = 1
def chance():
global BronzeNum, SilverNum, GoldNum, PlatinumNum, DiamondNum, BronzeWin, SilverWin, GoldWin, PlatinumWin, DiamondWin
TotalNum = (BronzeNum * 1 + SilverNum * 2 + GoldNum * 3 + PlatinumNum * 5 + DiamondNum * 7)
BronzeChance = 1 / TotalNum
SilverChance = 2 / TotalNum
GoldChance = 3 / TotalNum
PlatinumChance = 5 / TotalNum
DiamondChance = 7 / TotalNum
Weight = [BronzeChance * BronzeNum, SilverChance * SilverNum, GoldChance * GoldNum, PlatinumChance * PlatinumNum,
DiamondChance * DiamondNum]
random_player = random.choices(["동", "은", "금", "백금", "다이아"], Weight)[0]
if random_player == "동":
BronzeNum -= 1
BronzeWin += 1
elif random_player == "은":
SilverNum -= 1
SilverWin += 1
elif random_player == "금":
GoldNum -= 1
GoldWin += 1
elif random_player == "백금":
PlatinumNum -= 1
PlatinumWin += 1
elif random_player == "다이아":
DiamondNum -= 1
DiamondWin += 1
TryNum=int(input("시행횟수"))
for i in range(TryNum):
for i in range(3):
chance()
if DiamondWin>=1:
DTW+=1
if PlatinumWin>=1:
PTW+=1
if GoldWin>=1:
GTW+=1
if SilverWin>=1:
STW+=1
if BronzeWin>=1:
BTW+=1
DiamondNum=1
PlatinumNum=2
GoldNum=3
SilverNum=4
BronzeNum=5
DiamondWin=0
PlatinumWin=0
GoldWin=0
SilverWin=0
BronzeWin=0
TW = DTW + PTW + GTW + STW + BTW
print("메달별 한번이라도 뽑힐 확률",f"다이아: {DTW/TryNum}",f"플레: {PTW/TryNum/2}",f"금: {GTW/TryNum/3}",f"은: {STW/TryNum/4}",f"동: {BTW/TryNum/5}\n",)
댓글 17
댓글 쓰기
1등
15:52
24.08.21.
COCT
갠적으로 브론즈가 놀랍습니다 ㅋㅋㅋㅋ
원래 첫트에 될 확률이 2%밖에 안나오는게 브론즈인데,,,,위에 유저들이 당첨되고 나면 최종적으로 한번이라도 뽑힐 확률이 7% ㄷㄷㄷㄷㄷ
원래 첫트에 될 확률이 2%밖에 안나오는게 브론즈인데,,,,위에 유저들이 당첨되고 나면 최종적으로 한번이라도 뽑힐 확률이 7% ㄷㄷㄷㄷㄷ
15:54
24.08.21.
COCT
참고로 브론즈"에서" 상품을 받아가는 사람이 나올 확률이 아니라
브론즈 유저 1분이 상품을 받아갈 확률입니다
브론즈 유저 1분이 상품을 받아갈 확률입니다
15:55
24.08.21.
2등
계산틀린거같은데요?
16:22
24.08.21.
3등
1등상품 타갈확률을 구한건가요? 곱하기 생략하면
7/ 71 52 33 24 15 이렇게 계산해야합니다
메달별로 사람수가 증가합니다
7/ 7 10 9 8 5 7/39 20프로도 안되는 확률입니다
16:24
24.08.21.
카스타드
1,2,3등상품중에 하나라도 타갈확률...
16:25
24.08.21.
Software
그렇군요 상품을 타갈확률이라고하면 사실 100프로가됩니다
16:30
24.08.21.
Software
1,2,3등상품중 하나라도 타갈확률을 구하려면 "여사건"을 사용해야합니다
16:30
24.08.21.
카스타드
그걸 쓰려고해도
메달마다 응모권수도 다르고 하니
그냥 3번 뽑고 리셋하고 다시뽑고 하는프로그램 만들어서 반복하는게 더 편하더군요
그래도 코드는 제대로 짰다구욧! 백만번 돌려봤고...(말그대로)
메달마다 응모권수도 다르고 하니
그냥 3번 뽑고 리셋하고 다시뽑고 하는프로그램 만들어서 반복하는게 더 편하더군요
그래도 코드는 제대로 짰다구욧! 백만번 돌려봤고...(말그대로)
16:43
24.08.21.
Software
2등까진 수기로 계산해봤고 3등은 케이스분류가 너무많은데 직관(?)적으로 코드가맞는거같네요
1등상품인줄알고 확률이이상한데? 했던 ㅋㅋㅋ
1등상품인줄알고 확률이이상한데? 했던 ㅋㅋㅋ
17:01
24.08.21.
카스타드
ㅋㅋㅋㅋㅋㅋㅋ
1등상품이면 그냥 암산으로도 되는 난이도ㅋㅋㅋㅋㅋ
1등상품이면 그냥 암산으로도 되는 난이도ㅋㅋㅋㅋㅋ
17:37
24.08.21.
Software
48%나 될리가없는데? 뭐지? 했네요 ㅋㅋㅋㅋㅋ
17:38
24.08.21.
7.5퍼 치킨 우하하
16:31
24.08.21.
eoeoe
7.5퍼 이어폰입니다만 ㅋㅋㅋㅋ
16:44
24.08.21.
합쳐보니 푸틴식 추첨법이네요 ㄷㄷㄷㄷ
18:50
24.08.21.
Scrin
러시아에선 곰도 투표를 ㅋㅋㅋㅋ
18:50
24.08.21.
권한이 없습니다. 로그인
와 이 집 가챠 확률 혜자네요(퍼퍼퍽)