본문 바로가기

Math

로또 복권 당첨 확률

로또 복권의 당첨확률을 등수별로 구해보려고 한다. 이는 매우 초보적인 조합론 문제로, 확률을 처음 배울 때 나오는 예제 정도라 하겠다. 그래도 맨날 어려운 거만 하면 힘드니까 한번 정리해 보기로 했다.

1장 구매했을 때 당첨 확률 ($P_i$)

로또 규칙을 간단하게 설명하자면, 1부터 45까지의 자연수 중에서 구매자는 서로 다른 6개를 고른다. 로또를 추첨할 때는 서로 다른 '당첨번호' 6개를 먼저 고르고, 또 다른 하나를 골라서 '보너스 번호'라고 한다. 구매자가 고른 6개 중 6, 5, 4, 3개가 당첨번호와 일치하면 각각 1, 3, 4, 5등이다. 단, 5개가 일치하고 나머지 하나는 보너스 번호와 같으면 2등이다. 등수별 당첨 확률은 다음과 같이 계산할 수 있다.

- 1등: 모든 조합 중에서 1등은 하나이므로, $$P_1= \frac{1}{\binom{45}{6}}=\frac{1}{8145060}\approx 1.22774\times10^{-7}=0.0000122774\%$$

- 2등: 당첨번호 6개 중에 5개가 맞아야 하고 보너스 번호도 맞아야 하므로, 2등은 $\binom{6}{5}=6$개이다. $$P_2=\frac{ \binom{6}{5} }{\binom{45}{6}}=\frac{1}{1357510}\approx 7.36643\times10^{-7}=0.0000736643\%$$

- 3등: 당첨번호 6개 중에 5개가 맞아야 하고, 어디에도 속하지 않은 38개의 번호 중에 하나가 있어야 한다. $$P_3=\frac{ \binom{6}{5}\binom{38}{1} }{\binom{45}{6}}=\frac{19}{678755}\approx 2.79924\times10^{-5} = 0.00279924\%$$

- 4등: 당첨번호 6개 중에 4개가 맞아야 하고, 당첨번호가 아닌 39개의 번호 중에 2개가 있어야 한다.  $$P_4=\frac{ \binom{6}{4}\binom{39}{2} }{\binom{45}{6}}=\frac{741}{543004}\approx 1.36463\times10^{-3} = 0.136463 \%$$

- 5등: 당첨번호 6개 중에 3개가 맞아야 하고, 당첨번호가 아닌 39개의 번호 중에 3개가 있어야 한다. $$P_5=\frac{ \binom{6}{3}\binom{39}{3} }{\binom{45}{6}}=\frac{9139}{407253}\approx 2.24406\times10^{-2} = 2.24406 \%$$

 

5장을 자동으로 구매했을 때 당첨 확률 ($Q_i$)

5장을 자동으로 구매하면, 각 복권이 독립이므로 최대 당첨 등수는 단순히 곱셈으로 계산할 수 있다.

- 1등: 5장 모두 1등이 아닐 확률을 1에서 빼면 된다. $$Q_1=1-(1-P_1)^5=\frac{22006301011001103331785950701}{35848537225054414460141796777600000}\approx6.13869\times10^{-7}=0.0000613869\%$$

- 2등: 5장 모두 1등과 2등이 아닐 확률을 1에서 뺀 다음에, 5장 모두 1등이 아닐 확률을 1에서 뺀 값($Q_1$)을 다시 빼면 된다. $$ Q_2=(1-P_1)^5 -(1-P_1-P_2)^5=\frac{22006263185866948014247454801}{5974756204175735743356966129600000}\approx3.68321\times10^{-6}=0.000368321\%$$

- 3~5등도 계산 방법이 거의 똑같으므로 식만 적겠다. $$Q_3=(1-P_1-P_2)^5-(1-P_1-P_2-P_3)^5=\frac{10197438460020251894901798079}{72862880538728484675084952800000}\approx1.39954\times10^{-4}=0.0139954\%$$ $$Q_4=(1-P_1-P_2-P_3)^5-(1-P_1-P_2-P_3-P_4)^5=\frac{788380634519553910153684807}{115874059717347602295407827968}\approx6.80377\times10^{-3}=0.680377\%$$ $$Q_5=(1-P_1-P_2-P_3-P_4)^5-(1-P_1-P_2-P_3-P_4-P_5)^5=\frac{19120807506235232293881028579}{179242686125272072300708983888}\approx1.06676\times10^{-1}=10.6676\%$$

 

모든 번호가 다르도록 5장을 구매했을 때 당첨 확률 ($R_i$)

자동으로 구매할 때의 사전확률은 위에서 계산한 $Q_i$로 구할 수 있다. 그러나 자동으로 구매한 후의 사후확률이나, 수동으로 구매할 때의 확률은 다르다. 왜냐하면 5장의 상대적 번호 분포가 다를 수 있기 때문이다. 단적으로, 5장 모두 같은 숫자의 조합인 경우에는, 1등이 당첨된다면 5장이 당첨되지만 그렇지 않으면 하나도 1등이 당첨되지 않으므로, 당첨 확률이 매우 낮아진다. 이를 계산하는 가장 좋은 방법은, 당첨번호과 보너스번호로 가능한  $\binom{45}{6}\times39$가지 조합을 컴퓨터로 다 돌려 보는 것이다. (C언어로 코딩하면 30초도 안 걸려서 답이 나온다.) 하지만 30개의 모든 번호가 다르도록 5장을 구매했을 때의 당첨 확률은 수학적으로 계산할 만하므로, 간단히 계산 결과를 적어보려고 한다. (수학적으로 계산한 후에, 컴퓨터로 돌려보면서 검증했다.)

확률을 수학적으로 구하기 위해서는, 구매한 5장이 이미 정해졌다고 가정하고 당첨번호와 보너스번호를 기준으로 생각하자.

- 1등: 당첨번호 6개가 모두 한 장에 속해야 하므로, 당첨번호 6개가 나오는 경우의 수 중에서 1등인 경우의 수는 5이다. $$R_1=\frac{5}{\binom{45}{6}}=\frac{1}{1629012}\approx6.13869\times10^{-7} =0.0000613869\% $$

- 2등: 당첨번호 6개 중 5개가 모두 한 장에 속해야 하고, 그 장에 쓰인 나머지 한 수가 보너스번호와 일치해야 한다. $$R_2=\frac{5\times\binom{6}{5}\binom{39}{1}}{\binom{45}{6}}\times\frac{1}{39}=\frac{1}{271502}\approx3.68321\times10^{-6}=0.000368321\%$$

- 3등: 당첨번호 6개 중 5개가 모두 한 장에 속해야 하고, 보너스번호는 그 장에 쓰인 나머지 한 수를 제외한 38개 중 하나여야 한다. $$R_3=\frac{5\times\binom{6}{5}\binom{39}{1}}{\binom{45}{6}}\times\frac{38}{39}=\frac{19}{135751}\approx1.39962\times10^{-4}=0.0139962\%$$

- 4등: 당첨번호 6개 중 4개가 모두 한 장에 속해야 한다. 보너스번호는 여기서부터는 고려할 필요가 없다. $$R_4=\frac{5\times\binom{6}{4}\binom{39}{2}}{\binom{45}{6}}=\frac{3705}{543004}\approx6.82315\times10^{-3}=0.682315\%$$

- 5등: 당첨번호 6개 중 3개가 모두 한 장에 속해야 한다. 다만, 이때 6개가 3개, 3개씩 속해서 두 장이 5등에 당첨되는 경우는 두 번 세지므로 빼야 한다. $$R_5=\frac{5\times\binom{6}{3}\binom{39}{3}}{\binom{45}{6}}-\frac{\binom{5}{2}\binom{6}{3}\binom{6}{3}}{\binom{45}{6}}=\frac{15165}{135751}\approx1.11712\times10^{-1}=11.1712\%$$

 

컴퓨터 실험

1장을 구매했을 때의 당첨 확률에 대해서만 컴퓨터로 확률을 테스트해 보았다. C언어로 로또를 추첨하고 구매하는 함수를 만든 뒤에, $2.5\times10^{10}$번 돌려서 1등, 2등, 3등, 4등, 5등이 나온 횟수를 기록하였다. 아래 표와 같이 계산한 $P_i$들과 잘 일치하는 것을 알 수 있다.

등수 도수 상대도수($S_i$) 상대오차 ($|S_i-P_i|/P_i$)
1등 $3103$ $1.24120\times10^{-7}$ $1.08459\times10^{-2}$
2등 $18481$ $7.39420\times10^{-7}$ $3.51331\times10^{-3}$
3등 $701149$ $2.80460\times10^{-5}$ $1.09875\times10^{-3}$
4등 $34125774$ $1.36503\times10^{-3}$ $2.93128\times10^{-4}$
5등 $561031192$ $2.24412\times10^{-2}$ $2.90441\times10^{-5}$

 

로또 구매하는 팁(?)

로또는 어떻게 하더라도 5등조차도 당첨확률이 10% 정도에 그치므로, 경제적 이익을 생각하면 구매하지 않아야 할 것이다. 하지만 재미로 구매하는데 당첨 확률을 조금이라도 높이고 싶다면, 먼저 $Q_i$와 $R_i$의 비교로 볼 때 구매하는 5장의 숫자가 겹치지 않게끔 택하는 것이 좋음을 알 수 있다. 하지만, 연속된 수, 31 이하의 수와 같이 다른 사람들이 택할 가능성이 높은 수를 택하면 당첨되더라도 당첨금이 낮을 것이다. 수동으로 하면 자기도 모르게 일정한 패턴에 따라 수를 선택하게 될 수 있으므로, 이 경우에도 다른 사람들이 택할 가능성이 높을 수 있다. 그러므로, 그냥 C언어로 코딩을 해서 45개 중 서로 다른 30개를 순서 있게 뽑고, 그대로 나열한 뒤 6개씩 끊어서 수를 선택하면 된다. 다만 여기서 다른 사람들이 택할 가능성이 높아 보이는 조합이 있으면 프로그램을 다시 돌리면 된다. (귀찮다면 프로그램에 31 이하의 수만으로 구성되는 경우, 등차수열인 경우 등에는 다시 고르도록 구성하면 된다.)