Bài 30 - Nghich ly sinh nhật
Đề bài: Trong nhom n nguoi, tính xác suất it nhat 2 nguoi trung ngày sinh.
Tìm n nhỏ nhat de xác suất do > 50%.
Ví dụ: n = 23
Kết quả:
P(23 nguoi có it nhat 2 nguoi sinh nhật trung) ≈ 50.73%
Day là Nghich ly sinh nhật!
Đăng nhập để giáo viên có thể giao bài và nhận bài nộp của bạn.
Câu trả lời
import math
n = int(input("Nhap so nguoi trong nhom: "))
# P(khong co 2 nguoi trung) = 365/365 * 364/365 * ... * (365-n+1)/365
p_khong_trung = 1.0
for i in range(n):
p_khong_trung *= (365 - i) / 365
p_trung = 1 - p_khong_trung
print(f"P({n} nguoi co it nhat 2 nguoi sinh nhat trung) ≈ {round(p_trung*100, 2)}%")
# Tim n nho nhat de P > 50%
print("\nTim n nho nhat de xac suat > 50%:")
p = 1.0
for i in range(1, 366):
p *= (365 - i + 1) / 365
if 1 - p > 0.5:
print(f"Can it nhat n = {i} nguoi de P > 50%")
print(f"P({i}) = {round((1-p)*100, 2)}%")
break