Dodatni izziv: Dama z ogrlicami

Rok za oddajo: ponedeljek, 15. november 2021, 08.00

Naloga za programerje

Detektiv je osem dni opazoval osumljenko. Prvi dan je nosila ogrlico s črkami WUMYDSR (na sliki). Drugi dan ZQRKJPIZ. Tretji DCYMSLWZ ... No, povejmo kar za vseh osem:

WUMYMDSR
ZQRKJPIZ
DCYMSLWZ
IXUGYZBB
SRWUMYMD
JKRQZZIP
OWAHBGVG
MYMUWRSD

Koliko različnih ogrlic ima? Osem? Ne. Peti dan je nosila isto ogrlico kot prvi, le malo drugače je bila zasukana. Pa tudi zadnji dan je nosila isto ogrlico, le da ni samo zasukana temveč tudi prezrcaljena (prvi dan si jo je nataknila čez glavo, osmi pa čez noge).

Napiši program, ki za podano datoteko pove, koliko različnih ogrlic vsebuje.

Vsebino datoteke boste najlažje prebrali z

ogrlice = list(map(str.strip, open("ogrlice1000.txt")))

ogrlice1000.txt seveda zamenjate z imenom datoteke, ki jo želite brati.

Naloga za matematike ali programerje

Recimo, da ima osumljenka 1000 različnih ogrlic. Opazujemo jo 1000 dni. Koliko različnih ogrlic bomo videli?

Odgovor je seveda odvisen od sreče. Morda (a ne prav verjetno) vseh 1000, morda (a enako neverjetno) samo eno. Kakšno pa je *pričakovano število različnih ogrlic?? Če bi ta eksperiment velikokrat ponovili (večkrat opazujemo isto osumljenko za 1000 dni in preverimo, koliko različnih ogrlic je pokazala): koliko ogrlic bi videli v poprečju?

To se da izračunati ali simulirati.

Datoteke z ogrlicami