Sorun bildirimi
Pólya yine urnu ile oynuyor ve bazı olasılıkları hesaplamasına yardım etmenizi istiyor.
Bu urn deneyinde Pólya'nın başlangıçta 1 kırmızı ve 1 mavi boncuk içeren bir urnu vardır.
Her yinelemede, bir boncuğa ulaşır ve bir boncuk alır, ardından rengi inceler ve boncuğu tekrar urn'a yerleştirir.
Daha sonra adil bir madeni para çevirir, madeni para kafaya girerse, aynı renkli boncuğun 6 kenarlı adil bir rulo rulosunu urn'a yerleştirir, kuyruklara inerse aynı renkli boncuğun sayısının yarısını urndan çıkarır ( Tamsayı bölmesini kullanarak - seçilen rengin boncuk sayısı garip (c-1)/2
ise, c, o rengin boncuk sayısı olduğu yerde çıkarır )
N ≥ 0 ve ondalık r> 0 tamsayısı verildiğinde, n yinelemeden sonra boncukların renkleri arasındaki oranın en kısa bayttaki r'den büyük veya ona eşit olması olasılığını 2 ondalık basamağa verin.
Örnek bir yineleme kümesi:
(X, y) urn'u x kırmızı boncuklar ve y mavi boncuklar içerecek şekilde tanımlasın.
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
Görüldüğü gibi r oranı her zaman ≥ 1'dir (bu nedenle kırmızı veya mavinin daha küçük olana bölünmesiyle daha büyüktür)
Test senaryoları:
F (n, r) n yinelemeleri için fonksiyonun uygulanmasını ve r oranını tanımlasın
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
Bu kod golf, bu yüzden bayttaki en kısa çözüm kazanır.