W łamigłówce ze starej mojej książki zdefiniowana jest gra, w której dwóch graczy wybiera sekwencje rzutów monetą, które według nich pojawią się jako pierwsze, gdy moneta zostanie wielokrotnie odwrócona. (To było rzeczywiście dziwne, a nawet rzuty kostką, ale ten mały szczegół nie ma znaczenia pod względem równoważności problemu.)
Należy zauważyć, że jeśli gracz 1 wybierze, TTT
a gracz 2 wybierze HTT
, ten gracz 2 ma szansę wygranej 7/8, ponieważ jedyną możliwą drogą TTT
może być HTT
to, że wszystkie trzy pierwsze rzuty są remisem.
Twoim zadaniem jest stworzenie programu lub funkcji, która wydedukuje prawdopodobieństwo, że jedna z dwóch wybranych sekwencji pojawi się pierwsza. Twój program pobierze dwa wiersze danych wejściowych (lub dwa ciągi jako argumenty), z których każdy reprezentuje sekwencję o długości 10 lub mniejszej:
HTT
TTT
Podaj prawdopodobieństwo, że pierwszy gracz wygra, w postaci ułamkowej lub dziesiętnej:
7/8
0.875
Wygrywa najkrótszy kod do wykonania tego w dowolnym języku.