วันเกิดที่ผิดธรรมดาเป็นปัญหาที่มีชื่อเสียงมากในส่วนของความน่าจะเป็น
คำชี้แจงปัญหา − มีคนหลายคนที่งานวันเกิด บางคนมีวันเกิดที่เหมือนกัน เราต้องหาจำนวนคนโดยประมาณในงานวันเกิดโดยพิจารณาจากวันเกิดวันเดียวกัน
ในความน่าจะเป็น เรารู้ว่าโอกาสที่จะได้นำหน้าคือ 1/2 เหมือนกับว่าเรามีเหรียญอยู่บ้าง โอกาสที่จะได้หัว 10 หัวคือ 1/100 หรือ 0.001
เรามาทำความเข้าใจแนวคิดกันเถอะ
โอกาสที่คนสองคนจะมีวันเกิดต่างกันคือ $$\frac{364}{365}$$ ซึ่งเป็น $$\lgroup1-\frac{1}{365}\rgroup$$ ในปีที่ไม่ใช่ปีอธิกสุรทินพี>
ดังนั้น เราสามารถพูดได้ว่าคนแรกที่มีโอกาสเกิดวันเกิดอย่างเฉพาะเจาะจงคือ '1' และสำหรับคนอื่นๆ จะแตกต่างออกไปคือ
P(different) =$$1\times\lgroup1-\frac{1}{365}\rgroup\times\lgroup1-\frac{2}{365}\rgroup \times\lgroup1-\frac{3}{365}\rgroup\times\lgroup1-\frac{4}{365}\rgroup...$$
ดังนั้น
P(same) =1 − P(แตกต่าง)
ตัวอย่างเช่น จำนวนผู้ที่มีวันเกิดวันเดียวกันซึ่งความน่าจะเป็นคือ 0.70
N =√2 × 365 × log(1-1/p)
N =√2 × 365 × log(1-1/0.70) =30
ดังนั้นจำนวนรวมโดยประมาณ ของคนที่เกิดวันเดียวกันคือ 30
ตัวอย่าง
import math def findPeople(p): return math.ceil(math.sqrt(2*365*math.log(1/(1-p)))) print(findPeople(0.70))
ผลลัพธ์
การเรียกใช้โค้ดด้านบนจะสร้างผลลัพธ์เป็น
30