Парадокс дней рождения
Сколько нужно людей, чтобы у двоих совпал день рождения с шансом больше половины? Ответ удивит: всего 23.
Парадокс дней рождения — контринтуитивный факт: уже в группе из 23 человек вероятность совпадения дней рождения превышает 50%.
Интуиция кричит: дней в году 365, значит, нужны сотни людей. Но это ловушка — мы сравниваем не «себя со всеми», а «всех со всеми». Число пар растёт квадратично, и совпадение становится вероятным неожиданно быстро.
Считаем вероятность
Проще считать вероятность отсутствия совпадений, а потом вычесть из единицы. Чтобы у всех $n$ человек дни рождения были разными:
$$P(\text{все разные}) = \frac{365}{365}\cdot\frac{364}{365}\cdot\frac{363}{365}\cdots\frac{365-n+1}{365}.$$
Тогда вероятность хотя бы одного совпадения равна $1 - P(\text{все разные})$. Каждый следующий человек должен «не попасть» в уже занятые дни, и с ростом группы это становится всё труднее.
Проверяем в коде
def prob_shared(n):
p_all_different = 1.0
for k in range(n):
p_all_different *= (365 - k) / 365
return 1 - p_all_different
for n in [10, 23, 30, 50, 70]:
print(f"{n:>2} человек: P(совпадение) = {prob_shared(n) * 100:.1f}%")
Вывод:
10 человек: P(совпадение) = 11.7% 23 человек: P(совпадение) = 50.7% 30 человек: P(совпадение) = 70.6% 50 человек: P(совпадение) = 97.0% 70 человек: P(совпадение) = 99.9%
Как работает под капотом
Ключ к разгадке — число пар. В группе из $n$ человек пар не $n$, а $\binom{n}{2} = \frac{n(n-1)}{2}$. Для 23 человек это уже $253$ пары — каждая может дать совпадение. Поэтому вероятность растёт куда быстрее, чем подсказывает наивная интуиция «один против 365». Произведение в коде последовательно умножает шансы «не совпасть»: первый человек свободен (365/365), второй должен избежать одного дня (364/365), третий — двух (363/365) и так далее. К 23-му множителю произведение падает ниже 0,5, и вероятность совпадения переваливает за половину.
Частые ошибки
Парадокс не про «совпадение с конкретным человеком» (для этого правда нужно ~253 человека для 50%), а про «хоть какое-то совпадение в группе». Не считайте 365/2 ≈ 183 ответом — квадратичный рост пар всё меняет. И в модели мы игнорируем 29 февраля и неравномерность рождений, что почти не влияет на результат.
Итог
- В группе из 23 человек шанс совпадения дней рождения уже больше 50%.
- Считаем через вероятность «все дни разные» и вычитаем из 1.
- Причина — квадратичный рост числа пар $\binom{n}{2}$.
- Парадокс — про любую пару в группе, а не про конкретного человека.