Documente Academic
Documente Profesional
Documente Cultură
testul nu a reusit.
Acum lasam W(n, k) = numarul minim de incercari necesare pentru a
identifica valoarea etajului critic in cel mai rau caz, dat fiind faptul ca
procesul este in starea s = (n, k)
Atunci se poate demonstra ca W(n,k) = 1 + min{max(W(n 1, x 1),
W(n,k x)): x = 1, 2, ..., k }
cu W(n,1) = 1 pentru orice n > 0 si W(1,k) = k pentru orice k.
Este usor a se rezolva aceasta ecuatie iterative prin cresterea sistematica a
valorilor n si k.
Solutie mai rapida folosind programarea dinamica folosind alta
parametrizare
Solutia de mai sus este de ordinul timpului O( n k^2 ) folosind programarea
dinamica.
Acest lucru poate fi imbunatatit la O( nk log k) timp de cautare binara a lui x
optim deoarece W ( n - 1 , x - 1 ) este n cretere n x in timp ce W ( n , k-x ) este
descresctor n x , astfel exista un minim local de max ( W ( n - 1 , x - 1 ) ,
W ( n , k-x ) este un minim global .
De asemenea prin stocarea lui x optim pentru fiecare celula din tabelul DP si
referindu-se la valoarea sa din celula precedent, x optim poate fi gasit intr-un timp
constant , imbunatatind ordinul timpului la O(nk).
Chiar si asa, exista o solutie si mai rapida, care implica urmatorii parametrii:
Fie k numarul total de etaje astfel incat oule sparte de la cadere de etajul k.
(Exemplul de mai sus este echivalent cu a lua k = 37 ) .
Fie m etajul minim de la care oua poate fi aruncat si se sparge.
Fie f(t, n) numarul maxim de valori de m care se disting folosind t incercari si n
oua.
Atunci f(t,0) = f(0,n) = 1 pentru orice t, n 0.
Fie a etajul de la care primul ou cade in strategia optima.
Daca primul ou s-a spart, m este de la 1 la a si se distinge prin folosirea a cel mult
t-1 incercari si n-1 oua.
Daca primul ou nu s-a spart atunci m este de la a+1 la k si se distinge folosind t-1
incercari si n oua.
care poate fi
Folosind
pentru oricare i 0.
Atata timp cat
pentru oricare t 0 putem cauta binary t
pentru a gasi x, rezultand un algoritm
.