Zkouska ma dve casti - 4 "lehke" priklady - cas: 60 min
1 velky priklad - cas: 90 min
Veskera zadani nam psal na tabuly, takze nez dopsal posledni ze 4 lehkyh prikladu, mohl uz nekdo mit 1 priklad hotov. Dale je cas se ptat na zadani. Pote nastavi priblizne tech 60 minut.
Po 4 lehkych prokladch je 5 minut pauza. Pote opet napise zadani velkeho prikladu.
Nase priklady:
Lehke - prolog
Najdi maximalni nezavislou mnozinu v grafu (nemusi byt nejvetsi mozna)
Kartezky soucin 2 grafu (bez orientace hran)
Lehke Haskell:Najdi k nejmensich cisel v seznamu prirozenych cisel. (seznam neni setrizen. Lze predpokladat, ze se tam prvky neopakuji)
data T12 a= Nil
|N1 a (T12 a )
|N2 a (T12 a ) (T12 a )
pro tento strom napis fold a pomoci funkce fold napis funkci pro vypsani hodnot z vrcholu typu (N2 a b c) jako seznam (v preorder)
Tezky priklad:
Je dan seznam strojovych instrukci, pro nektere z instrukci je dan casovy odstup mezi nimi i a j -> r(i,j) a J(i,j) - jestli je mozne instukce i a j prohodit (nemusi platit ze J(i,j) = J(j,i) )
Pricemz nejmensi odstup mezi 2 instrukcemi je nejmene 1 a procesor zvladne zacit nejvyse 1 instrukci za cyklus.
Ukol je nalezt posloupnost instrukci, ktera bude nejrychleji zpracovana v procesoru. Instrukci priradit cas, kdy se dostane na radu.
K tezkemu prikladu dodal, ze nemusi byt supr efektivni.. Hlavne abychom ho zvladli napsat...
Pro vysledku se chodi odpoledne - cas urci, pri odevzdani tezkeho prikladu