Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Chương trình tính xác suất người cuối được ghế đúng chỗ trên máy bay Python

Có n ghế trên máy bay. Hành khách đầu mất vé → ngồi ngẫu nhiên. Hành khách sau: nếu ghế của mình trống thì ngồi, không thì chọn ngẫu nhiên ghế trống. Tính xác suất hành khách cuối ngồi đúng chỗ.

Kết quả: n=1 → 100%, 1 → 50% (luôn hằng số).

Giải thích

Vấn đề này nổi tiếng với kết quả bất ngờ: xác suất luôn là 50% cho mọi 1. Lý do: người đầu tiên ngẫu nhiên chọn ghế, quá trình dừng lại khi ai đó chọn ghế của người đầu (→ người cuối được ghế mình) hoặc ghế của người cuối (→ người cuối mất ghế). Hai sự kiện này đối xứng.

Ví dụ triển khai

def solve(n):
    return "50%" if n > 1 else "100%"

print(solve(5))

Đầu vào

5

Đầu ra

50%