생일 역설(Birthday Paradox) 확률 계산기

사람 수를 입력하면 그중 생일이 같은 두 사람이 있을 확률을 계산해드립니다.

생일 역설이란? 언제 쓰는 계산인가

생일 역설은 "n명이 모였을 때 생일이 같은 사람이 한 쌍이라도 있을 확률"에 관한 문제입니다. 역설(paradox)이라는 이름이 붙었지만 논리적 모순은 없고, 수학적 결과가 직관과 크게 어긋난다는 뜻입니다. 1년을 365일로 보고 모든 날짜에 태어날 확률이 같다고 가정하면, 단 23명만 모여도 확률이 50%를 넘습니다. 이 계산기는 학급·동호회·회사 팀처럼 실제 인원수를 넣어 보거나, 수업과 강연에서 확률의 직관 오류를 보여 줄 때, 그리고 해시 충돌처럼 "무작위로 뽑은 값이 겹칠 확률"을 어림할 때 쓸 수 있습니다.

계산 원리: "하나도 안 겹칠 확률"을 먼저 구한다

"한 쌍이라도 같다"를 직접 세면 경우의 수가 복잡합니다. 그래서 반대 사건, 즉 "전원의 생일이 모두 다르다"를 먼저 구하고 1에서 뺍니다. 첫 번째 사람은 아무 날이나 가능(365/365), 두 번째 사람은 첫 번째와 달라야 하므로 364/365, 세 번째는 363/365, 이런 식으로 n번째까지 곱합니다.

P(모두 다름) = 365/365 × 364/365 × … × (365−n+1)/365
P(적어도 한 쌍 같음) = 1 − P(모두 다름)

곱해지는 항이 1보다 작은 수이므로 사람이 늘어날수록 "모두 다를 확률"은 급격히 줄어듭니다. 23명일 때 모두 다를 확률은 약 49.27%이고, 따라서 한 쌍이라도 같을 확률은 약 50.73%입니다.

왜 직관보다 훨씬 빨리 커지는가: 짝의 수

핵심은 "사람 수"가 아니라 "비교 가능한 짝의 수"입니다. n명에서 두 사람을 고르는 경우는 n×(n−1)/2쌍입니다. 사람이 두 배가 되면 짝은 약 네 배가 됩니다. 23명은 253쌍, 46명은 1,035쌍입니다. 각 쌍이 우연히 같을 확률은 1/365로 작지만 쌍이 수백 개면 합쳐진 확률이 커집니다. 이를 이용한 근사식이 P ≈ 1 − e^(−n(n−1)/730)입니다(730 = 2×365). 위 계산기의 "근사식 결과"가 이 값이며, n이 중간 크기일 때 정확값보다 1% 안팎 작게 나옵니다(아래 표 참고).

인원별 확률 참고표

인원짝의 수생일 겹침 확률(정확)근사식 결과나와 같은 사람이 있을 확률
5명102.71%2.70%1.09%
10명4511.69%11.60%2.44%
15명10525.29%25.00%3.77%
20명19041.14%40.58%5.08%
23명25350.73%50.00%5.86%
30명43570.63%69.63%7.65%
40명78089.12%88.20%10.15%
50명1,22597.04%96.51%12.58%
57명1,59699.01%98.74%14.24%
60명1,77099.41%99.22%14.94%
70명2,41599.92%99.87%17.25%
100명4,95099.9999693%100.00%23.78%

기준점은 50% 도달이 23명, 90% 도달이 41명, 99% 도달이 57명입니다. 마지막 열은 "특정한 나 한 사람"과 같은 생일이 모임에 있을 확률로, 같은 인원에서도 훨씬 낮습니다. 나와 같을 확률이 50%를 넘으려면 나를 포함해 254명(나 외 253명)이 필요합니다.

검산된 계산 예시

예시 1. 23명. 모두 다를 확률은 365/365 × 364/365 × … × 343/365 ≈ 0.4927이므로, 겹칠 확률은 1 − 0.4927 = 50.73%입니다. 짝은 23×22/2 = 253쌍입니다.

예시 2. 30명짜리 학급. 짝은 435쌍이고 확률은 70.63%입니다. 즉 한 반 30명이면 열 번 중 일곱 번 정도는 생일이 같은 친구 쌍이 있다는 뜻입니다. 단, 이는 확률일 뿐이며 어느 반이든 반드시 그렇다는 보장은 아닙니다.

예시 3. 근사식 점검. n=23이면 n(n−1)/730 = 506/730 ≈ 0.6932, 이를 이용해 1 − e^(−0.6932)를 계산하면 약 50.00%로, 정확값 50.73%와 0.73%포인트 차이가 납니다.

확률 목표별 필요 인원

거꾸로 "확률이 얼마가 되려면 몇 명이 필요한가"를 보면 증가 속도가 더 선명합니다. 아래는 365가지 날짜 기준으로 겹칠 확률이 각 목표에 처음 도달하는 인원을 빌드 시 계산한 값입니다.

목표 확률필요 인원
10%10명
25%15명
50%23명
75%32명
90%41명
95%47명
99%57명
99.9%70명

10%에는 10명이 필요하지만 50%까지는 23명, 99%까지는 57명입니다. 확률 10%에서 50%로 가는 데 13명이 더 필요하고, 50%에서 99%로 가는 데는 34명이 필요해, 중간 구간에서 가장 빠르게 오르다가 1에 가까워질수록 완만해지는 S자 형태입니다.

가짓수가 달라지면: 일반화와 √N 법칙

날짜가 365가지가 아니라 N가지라면 50%에 도달하는 인원은 대략 1.1774×√N입니다(근사식에서 n(n−1)/(2N) = ln 2를 풀어 얻은 값). 아래 표의 "정확" 열은 N을 직접 대입해 곱한 값이고, 근사 열은 이 식입니다.

값의 종류50% 도달 인원(정확)근사 1.1774×√N
요일 (7가지)43.1
태어난 달 (12가지)54.1
한 달의 날짜 (31가지)76.6
두 자리 수 (100가지)1311.8
생일 (365가지)2322.5
네 자리 수 (10,000가지)119117.7
16비트 값 (65,536가지)302301.4
32비트 값 (약 43억 가지)77,16477162.1

태어난 달(12가지)로 보면 5명만 모여도 절반을 넘고, 요일(7가지)로는 4명이면 충분합니다. 반대로 32비트 값처럼 공간이 크면 수만 개를 뽑아도 비로소 절반이므로, 짧은 코드나 해시를 쓸 때는 "전체 가짓수의 제곱근" 근처에서 충돌이 시작된다고 보면 됩니다. 이 표는 날짜 분포가 균등하다는 이상적 가정에서 나온 값입니다.

같은 생일 쌍의 기댓값

확률과 별개로 "같은 생일 쌍이 평균 몇 개인가"를 따질 수도 있습니다. 각 쌍이 같을 확률이 1/365이므로 기댓값은 짝의 수 ÷ 365입니다. 23명은 253쌍 ÷ 365 ≈ 0.693쌍으로 약 0.69쌍이고, 30명은 435쌍 ÷ 365 ≈ 1.19쌍입니다. 기댓값이 1을 넘어도 겹칠 확률이 100%는 아닙니다. 어떤 모임은 쌍이 여러 개이고 어떤 모임은 하나도 없어 평균이 그렇게 나오기 때문입니다. 실제로 30명에서 확률은 70.6%이지 100%가 아닙니다.

실전 활용 시나리오

시나리오 1. 신입 교육 40명 아이스브레이킹. 40명의 확률은 표에서 약 89%이므로, 진행자가 "생일이 같은 분 있나요?"를 던지면 열 번 중 아홉 번은 같은 생일 쌍이 나옵니다. 다만 한 번 시도에서 안 나올 가능성이 11% 정도 있으니, 질문 전에 명부로 미리 확인해 두면 진행이 매끄럽습니다. 시나리오 2. 경품 추첨 번호 설계. 응모권에 두 자리 번호(100가지)를 무작위로 나눠 주면 13명만 되어도 번호가 겹칠 확률이 50%를 넘습니다. 중복이 없어야 한다면 무작위 추첨 대신 겹치지 않는 번호를 순서대로 배부하세요. 시나리오 3. 임시 비밀번호 PIN 중복. 4자리 PIN(10,000가지)을 각 사용자에게 무작위로 부여하는 시스템에서 사용자가 약 119명이면 누군가 같은 PIN을 가질 확률이 절반입니다. 같은 PIN이 있는 것 자체가 보안 사고는 아니지만, 고유해야 하는 식별자를 무작위 짧은 숫자로 만들면 안 되는 이유가 됩니다.

이 도구의 입력 규칙과 결과 읽는 법

흔한 오해와 이 계산의 한계

결과를 어디에 활용하나

확률 수업에서는 "모두 다른 경우의 곱 → 1에서 빼기"라는 여사건 풀이의 대표 예로 쓰입니다. 정보 보안·프로그래밍에서는 같은 원리가 "생일 공격"으로 불리며, 가능한 값이 N가지일 때 무작위로 뽑은 값들 사이에서 겹침(충돌)이 대략 √N개 근처에서 생기기 시작한다는 점을 설명합니다. 짧은 ID나 해시를 설계할 때 값의 공간을 넉넉히 잡아야 하는 이유입니다. 모임·행사에서는 인원이 25~30명을 넘으면 생일이 같은 사람이 있을 가능성이 높으니 이벤트 소재로 써 볼 수 있습니다.

자주 묻는 질문

이 계산은 윤년을 고려하나요?

아니요, 1년을 365일로 가정하고 모든 날짜에 태어날 확률이 동일하다고 전제합니다. 2월 29일을 넣어도 결과 변화는 매우 작습니다.

"나와 생일이 같은 사람이 있을 확률"과는 다른 건가요?

네, 다릅니다. 특정한 한 사람과 같은 생일이 있을 확률은 1 − (364/365)^(n−1)이며, 50%를 넘으려면 254명이 필요합니다. 이 계산기의 주 결과는 그룹 안의 아무 두 사람이 같을 확률입니다.

왜 23명이 50%의 기준이 되나요?

22명은 47.57%로 절반에 못 미치고 23명은 50.73%로 처음 넘습니다. 정수 인원 기준으로 50%를 처음 넘는 지점이 23명입니다.

100명이면 확률이 정확히 100%인가요?

아닙니다. 100명에서도 99.9999693% 수준으로 1에 매우 가깝지만 겹치지 않을 가능성이 이론상 남아 있습니다. 확률이 정확히 100%가 되는 것은 366명부터입니다.

근사식은 왜 쓰나요?

계산기 없이 암산이나 종이 계산으로 어림하기 위해서입니다. n(n−1)/730을 구해 e의 음수 거듭제곱을 취하면 되며, 큰 N(해시 공간 등)에서도 같은 형태로 일반화됩니다.

실제 모임에서 직접 확인하면 이 확률과 맞나요?

한 번의 모임으로는 확인할 수 없고 비슷한 규모의 모임을 많이 모아 비율을 봐야 합니다. 40명 모임 100개 중 약 89개 안팎에서 겹친다는 식의 비율로 나타나며, 모임마다 결과가 다른 것은 정상입니다.

세 사람이 같은 생일일 확률은 어떻게 되나요?

이 계산기는 "두 사람 이상"이 같은 경우만 다룹니다. 세 사람 이상이 같은 생일일 확률은 더 낮으며 같은 방식으로 단순 곱으로 구할 수 없어 별도 계산이 필요하고, 이 도구에서는 제공하지 않습니다.

쌍둥이나 가족이 섞여 있으면 어떻게 달라지나요?

같은 날 태어난 사람이 구조적으로 포함되므로 확률은 계산값보다 높아집니다. 이 계산은 각 사람의 생일이 서로 독립적이라는 가정에서만 맞습니다.

소수점 둘째 자리 이하가 달라 보이는 이유는 무엇인가요?

컴퓨터의 부동소수점 계산 방식과 반올림 자리 차이 때문에 다른 계산기와 아주 작은 자리에서 다를 수 있습니다. 표에 보이는 소수 둘째 자리 값은 통상 이 영향을 받지 않지만, 경계에 걸린 값은 반올림 결과가 다르게 나올 수 있습니다.

관련 도구