Pchełki Python: plotka w totka

Natrafiłem gdzieś niedawno na informację, że w jednym z krajów w Afryce podobno doszło do przekrętu, bo w loterii padły liczby 5, 6, 7, 8, 9, 10.

Pomyślałem sobie, jakie jest prawdopodobieństwo wylosowania pięciu sąsiednich liczb spośród... no właśnie, spośród ilu? Przyjąłem roboczo, że spośród 49.

Pierwszą liczbę możemy wybrać na 49 sposobów. Drugą na 48, trzecią na 47 i tak dalej, aż do szóstej. Razem około dziesięciu miliardów kombinacji:

44 * 45 * 46 * 47 * 48 * 49 = 10 068 347 520

Ile spośród nich składa się z sześciu sąsiadujących liczb?

Sąsiadujące liczby ustawione w kolejności od najmniejszej do największej można uzyskać na 44 sposoby: począwszy od (1,2,3,4,5,6) aż do (44,45,46,47,48,49).

Każdy z tych 44 sposobów ma dodatkowo 6! = 720 permutacji (przestawień). A więc łącznie mamy 44 * 720 = 31 680 układów liczb sąsiadujących ze sobą. Szansa trafienia na jeden z nich wynosi:

31 680 / 10 068 347 520 = 0.000000314649449

Mniej więcej trzy dziesięciomilionowe. Jeżeli zagramy w totka dziesięć milionów razy, natrafimy na układ sześciu kolejnych liczb mniej więcej trzy razy.

Jak długo trzeba grać, żeby trafić chociaż raz?

Oczywiście, nie wiadomo. Szansa za każdym razem jest taka sama: około trzy na dziesięć milionów. Wiadomo jednak, że przy odpowiednio długim graniu prędzej czy później trafimy na jeden z tych 31680 układów.

Ile to jest "odpowiednio długo"?

Nie da się uzyskać gwarancji, że po N próbach trafimy. Ale można spróbować policzyć ile tych prób powinno być, żeby szansa trafienia była, dajmy na to, 99%. Jak to zrobić? Jeżeli szansa nie trafienia w jednej próbie wynosi (1 - 31680/10068347520) czyli około 0.99999685350550951185, to przy dwóch próbach będzie to (1 - 31680/10068347520)2 czyli około 0.99999370702091945128. Różnica niewielka. Ale nie wolno nie doceniać potęgowania: przy odpowiednio dużej liczbie prób uzyskamy wreszcie prawdopodobieństwo nie trafienia mniejsze niż 0.01.

Metodą prób i błędów (chociaż pewnie dałoby się prościej, logarytmem) sprawdziłem, że:

(1 - 31680/10068347520)1463586 = 0.009999976555193245

natomiast

(1 - 31680/10068347520)1463585 = 0.010000008020163384

Tak więc grając 1463586 razy mamy 99% szans na to, że gdzieś tam trafimy pięć sąsiednich liczb.

Na koniec spróbujemy sobie to zasymulować w Pythonie:

from random import sample
data = [x for x in range(1, 50)]
while 1 == 1:
    c = 0
    minr = 48
    while minr > 5:
        c += 1
        s = sample(data, 6)
        mr = max(s) - min(s)
        if mr < minr:
            minr = mr
    print(c, end=" ")

Uruchomienie powyższego kodu na kilkanaście godzin (ponad 32000 wykonań dużej pętli) dało mi na wyjściu trochę liczb, podstawowe statystyki:

  • W ekstremalnych przypadkach udało się uzyskać trafienie po 35 losowaniach (minimum) oraz po 3 999 695 losowaniach (maksimum).
  • Średnio trafienie następowało po 318K losowań
  • Mediana w okolicy 221K losowań

Wnioskuję stąd, że gdyby w owym afrykańskim kraju loteria odbywałaby się codziennie, to trzeba by czekać na uzyskanie takiego wyniku gdzieś między 650 a 1000 lat. Zakładając rzecz jasna, że losujemy spośród 49 liczb, a nie, dajmy na to, 20 albo 100.

Wniosek?

Brak 😉 Może był tam jakiś przekręt, może nie... Z prawdopodobieństwem tak już jest.

2 komentarze

  1. Przekręt? Nie wiem, nie interesuje mnie to zresztą. To co mnie zaś zaciekawiło to … jak blisko byliśmy tego w Polsce. Dzięki szybkiemu “scrapowi” zdobyłem jedyne parę tysięcy wyników losowań i … najmniejszy dotychczas dystans między liczbami skrajnymi w losowaniach to 8 -> 20,22,25,26,27,28 w połowie 1963.
    Ale jest jeszcze jeden bliższy(?) wyjątek mianowicie ten z kwietnia 2011:
    15,16,17,18,19,42

    Jednak jeśli wszystko jest oparte o faktyczną losowość to … nic to nie znaczy, tak jak seria 100 rzutów monetą ze stoma wynikami “orzeł” 😉

  2. Licząc, że na świecie jest, powiedzmy trzysta takich kulkowych loterii, to już co dwa, trzy lata gdzieś się kolejne liczby zdarzają. Przy losowaniach jak w Polsce, trzy razy w tygodniu, co jakieś 5 lat. W Afryce jest 59 państw co stanowi 30% wszystkich. Więc na oko, w “w jednym z krajów w Afryce”, zdarzy się to statystycznie co 17 lat.

Leave a Comment

Komentarze mile widziane.

Jeżeli chcesz do komentarza wstawić kod, użyj składni:
[code]
tutaj wstaw swój kod
[/code]