Opis problemu
Pólya znów bawi się swoją urną i chce, żebyś pomógł mu obliczyć pewne prawdopodobieństwa.
W tym eksperymencie z urną Pólya ma urnę, która początkowo zawiera 1 czerwony i 1 niebieski koralik.
Podczas każdej iteracji sięga i pobiera koralik, a następnie sprawdza kolor i umieszcza koralik z powrotem w urnie.
Następnie rzuca uczciwą monetą, jeśli moneta wyląduje na głowach, wstawi do urny rzetelną 6-stronną ilość rzutu kostką tego samego koloru koralika, jeśli wyląduje na ogonie, usunie z urny połowę liczby koralików tego samego koloru ( Używając podziału na liczby całkowite - więc jeśli liczba kulek wybranego koloru jest nieparzysta, usunie (c-1)/2
gdzie c jest liczbą kulek tego koloru)
Biorąc pod uwagę liczbę całkowitą n ≥ 0 i dziesiętną wartość r> 0, daj prawdopodobieństwo 2 miejscami po przecinku, że stosunek między kolorami perełek po iteracjach n jest większy lub równy r w najmniejszej liczbie bajtów.
Przykładowy zestaw iteracji:
Niech (x, y) zdefiniuje urnę tak, aby zawierała x czerwonych koralików i y niebieskich koralików.
Iteration Urn Ratio
0 (1,1) 1
1 (5,1) 5 //Red bead retrieved, coin flip heads, die roll 4
2 (5,1) 5 //Blue bead retrieved, coin flip tails
3 (3,1) 3 //Red bead retrieved, coin flip tails
4 (3,4) 1.333... //Blue bead retrieved, coin flip heads, die roll 3
Jak widać, stosunek r wynosi zawsze ≥ 1 (więc jest większy od czerwonego lub niebieskiego podzielony przez mniejszy)
Przypadki testowe:
Niech F (n, r) zdefiniuje zastosowanie funkcji dla iteracji i stosunek r
F(0,5) = 0.00
F(1,2) = 0.50
F(1,3) = 0.42
F(5,5) = 0.28
F(10,4) = 0.31
F(40,6.25) = 0.14
To jest golf golfowy, więc wygrywa najkrótsze rozwiązanie w bajtach.