Egy állatszelidítő 5 oroszlánt és 4 tigrist akar kivezetni a porondra. Két tigris nem jöhet egymás után, mert összevesznek. Hányféleképpen állíthatja sorba az állatokat
ha nem tudja megkülönböztetni őket egymástól?
ha meg tudja különböztetni őket egymástól?
nem tudja megkülönböztetni: A Nulla-egy feladat alapján: $\binom{5+1}{4} = 15$
meg tudja különböztetni: az előző rész alapján $\binom{5+1}{4}\cdot 5!\cdot 4! = 43200$
Csak a "nem tudja megkülönböztetni" eset. Az összes (korlátozás nélküli eset) egy sima ismétléses permutáció: $\binom{5+4}{4} = 126$, amiből $P(nincs\ szomszédos\ tigris) = \frac{15}{126} = 0.119$
using StatsBase:sample import Random Random.seed!(777) # reprodukálhatóság # Ti, Or és p_nem a feladatnak megfelelő értékű urna = vcat(fill('T',Ti), fill('O',Or)) # ebből húzunk (permutáció, mert mindet kihúzzuk) N = 100000 # ennyi esetben húzunk K = fill(0, N) # ebben vannak az egyes húzások eredményei for n in 1:N acase = sample(urna, Ti+Or, replace = false) # a húzás, egy eset p = '_' # az előző a sorban for c in acase if c == 'T' && p == 'T' p = '0' # ha az előző is 'T'igris akkor ... break end p = c end K[n] = (p != '0') end K = cumsum(K)./(1:N) # az addigi összes jó eset osztva az az összes esettel I = vcat(2 .^(4:Int(floor(log2(N)))), N) # csak "néhány" indexre rajzolunk (N>>2^4!) scatter(I, K[I], label = "szimuláció") # pöttyök # plot!(I, K[I], label = nothing) # vonalak plot!([1,N],[p_nem,p_nem], label = "elmélet") # az elméleti valség plot!(title = "Tigris\n abszolút eltérés a végén: $(round(abs(p_nem-K[end]), digits = 6))")