Bananaking
EDIT: htjela sam krace ali jbg, ako je nesto full krivo pliz nek me netko ispravi jer i ja idem preko rijesenih zadataka.
Also ako netko zna objasnit sta se uzima za d odnosno step za org i ort pretrazivanja bilo bi super jer se sjecam da se dosta oko tog nakon MI-a pricalo. Ja sam radila kao u ovim materijalima ali mi nije jedan zadatak bio tocan. Mozda sam krivo zaokruzila jer mislim da je na MI-u bio neparan broj za d?
Mogu pokusat ORT i LOG pretrazivanje objasnit, nisam ih ponovila, ali imam natuknice sebi zapisane pa ce valjda pomoc. Ugl sam iz doc-a gledala opcenit algoritam s onih slika sto je netko paste-ao i onda usporedjivala to s https://github.com/studosi-fer/MAIS/blob/master/ispiti/mi/2015-16/MAIS_2015-16_mi_rjesenja.pdf (zadnje dvije stranice). Na ovim github materijalima su ti jos color coded pa je relativno lako pratit.
Postupak i da li koristits MLE/MAD su zadani u zadatku. Najveci “problem” je znat onaj raspon d, za sad gledaj kako je na ovim materijalima.
Btw, sa strane je zapisano, blokovi se usporedjuju s [[20, 20], [1, 20]], a pocinje se od [[19, 18], [17, 2]]
Znaci ORT:
step bi trebao bit d/2
- izracunaj MLE/MAD za trenutni blok
- racunas prvo MLE/MAD za blokove koji su horizontalni s trenutnim (znaci lijevo i desno) i udaljenim za step (ako pratis sliku s githuba to su ti ovi zeleni)
- Od ta dva MLE/MAD, ako je jedan od njih manji od trenutne vrijednosti, to ti je novi min i mices se u taj blok i postupak nastavljas iz tog novog bloka, inace ostajes u istom (opet primjer s githuba, ni jedan nije manji od MSE1 pa se ostaje u istom)
- isto radis kao u 3. samo vertikalno, znaci za gornje i donje blokove udaljene za step (to su ovi crveni u doc-u)
- Opet gledas je li ijedan MLE/MAD manji od trenutnog (ovdje je za donji crveni blok ispao manji pa se on uzima kao novi trenutni
- step = step/2
- ponavljaj korake 2-6 dok step ne bude 1 (racunas za step=1 ukljucivo)
LOG
vrlo slicno pa necu toliko detaljno, ima isto na zadnjoj stranici isti zadatak samo s ovim postupkom
- izracunaj MAD/MLE za trenutni
- pretrazi I HORIZONTALNO I VERTIKALNO za trenutni step i TEK ONDA gledas min vrijednost za MLE/MAD
- ako je nadjen novi min i pritom se mijenja trenutni blok -> step ostaje isti, vrati se na korak 2. Inace, ako se ostaje pri istom min i istom bloku tek onda mijenjas step = step/2
- ponavljaj dok je step>1
- kad step postane = 1 radi ono sto je u zadnjem koraku na zadnjoj stranici ovog github linka jer nez rijecima objasnit lmao, blok koji se gleda je u ovom slucaju [[19, 19], [3, 8]] i smedjom bojom je oznaceno sta se sve racuna. Ugl sve oko tog bloka za step=1, bit ce 8 racunanja