CS 41 Algorim an Program Prolm Exam Soluion S Soluion Jonaan Turnr Exam -1/4/0 10/8/0 1. (10 poin) T igur low ow an implmnaion o ynami r aa ruur wi vral virual r. Sow orrponing o aual r (owing vrx o). 0, 0,1 0,100 a 0,98 0,1 j 0,99 g 0, 0, 0, 0, 0, 100 a 100 100 1 g 4 j Auming r ar u o implmn amiil pa algorim, wa i riual apaiy o g rom j o? I nx p in amiil pa algorim a an g rom a o j an i i g a a riual apaiy o, wa i riual apaiy o nx augmning pa? 1-1 -
. (10 poin) T igur low ow an inrmia a in xuion o ig lal prlow-pu algorim. Sow a o algorim ar a o nx wo p in wi a vrx om alan. You n no r-raw nir riual grap, u o ow all g, vri an aoia valu a ar moii y a p.,0 1, ian lal, x riual apaiy 1 0 1,0 1 8,0,,0 1 1,1 1 8,0 0,0,0 1 1, 1 8,0 0 - -
. (0 poin) Suppo w moiy l-ajuing inary ar r o a i prorm play p a mak largr ajumn o r. In pariular, uppo w allow play p own low. y u x E A v v D B x u C C y A B D E Sow a i rank(u)=k=rank(y), w n wr ri o mainain ri invarian ar p an w n or p. Rall a ri invarian ay a a vrx z mu av rank(z)= log (#o nan o z) ri a all im. Sin rank(u)=k, r ar k vri in original ur wi roo u. I rank(y)=k alo, rmainr o r a wr an k vri (in orwi y woul av mor an k +1 nan an n woul av rank grar an k). So ar opraion, vri x an y mu av rank mallr an k. So, w n wo wr ri o mainain ri invarian. Sow a i rank(u)<rank(y), w n wr an 4(rank (u) rank(u)) aiional ri o mainain ri invarian, wr rank (u) i rank o u, ar p i prorm. T numr o aiional ri n o mainain invarian i ( rank ( u) u)) + ( rank ( v) v)) + ( rank ( x) x)) + ( rank ( y) u)) = ( rank ( v) + rank ( x) + rank ( y)) ( rank( u) + rank( v) + rank( x)) ( rank ( u) u)) wr la p i juii y a a u a mall rank or p an larg rank ar p. Sin rank(u)<rank(y) an rank (u)=rank(y), i i <4(rank (u) rank(u)) ri. - -
4. (0 poin) Conir a inary ar r in wi a vrx a an aoia ky an a o. T vri ar orr y ky in uual way (o ky o vri in l ur o a givn vrx x ar rily l an ky o x, an o or). T o ar rprn uing irnial rprnaion w u or rprning pa. Compl ruriv union ar, own low, o a i rurn a la-o vrx rom among o vri wi ky mallr an a givn oun. T ruur o r no i own low alo. la wowaytr { in n; // r in on im {1,...,n} ru no { in k, D, Dm; // ky an irnial o il in l, r; // ini o l an rig ilrn } *v;... } #in l(x) (v[x].l) // you may aum imilar laraion // or rig, ky, Do, Dmin in ar(in, in oun) { // Rurn inx o a la o no rom among o no // in ur wi roo a av ky l an oun. // I r i mor an on u no, pik on wi // mall ky. Rurn Null, i r i no la o no // wi ky l an oun. i ( == Null) rurn Null; l i (l()!= Null && Dmin(l()) == 0) rurn ar(l(),oun); l i (ky() < oun && Do() == 0) rurn ; l i (rig()!= Null && Dmin(rig()) == 0) rurn ar(rig(),oun); l rurn Null; } - 4 -
. (1 poin) How many augmning pa o min-o, augmning pa algorim in in nwork own low ( pair on a g ar apaiy an o). Explain. a a a 1 1 9,4 9, x 1 x x 9,1 9, 9, 1,0 9, 9, 9,1 y 1 y y 9, 9,4 1 1 T algorim in 4 iin augmning pa in i grap. Iniially, i in 9 pa o orm,a 1,x i,y j, 1, wi apaiy 1 an o 0. A i poin g rom o a 1 i aura, a i g rom 1 o. Nx, i in 9 pa o orm, 1,y i,x j, 1, wi o.tn, i in 9 pa o orm,,a 1,x i,y j, 1,, wi o 4. An o or. I oninu in i aion, alway ju aing on uni o low or a augmning pa, in all pa pa roug nral ipari ugrap. Explain ow i xampl an gnraliz o ow a min-o, augmning pa algorim an ak im Ω(n ). To gnraliz xampl, mak a,,, an ain all k vri long, wi g o o 0,,4,... rom o a o a vri an rom a o vri o. Mak g o rom o a o vri an rom a o vri o, qual o 1,,,... Mak apaii o all g inin o an k. Expan nral ipari ugrap o a i a k vri an g rom x vri o y vri wi apaiy 1 an o 0. Aign inini apaiy an 0 o o all or g. In i grap, min-o augmning pa algorim wi in k augmning pa. Sin i u Dijkra algorim o in a augmning pa an in grap a mor an k g, i will ak Ω(k ) im o in a augmning pa. Ti giv a oal o Ω(k ) im o in minimum-o maximum low, wi i Ω(n ), in n=k+. - -
. (1 poin) Sa oniion a mu aii y a prlow in orr or i o aiy laling oniion wi rp o om laling union λ. T igur low ow an inan o min-o max low prolm wi a prlow an a laling. Do i prlow aiy laling oniion, wi rp o lal own? Wy or wy no? 8,,0 8 lal apaiy, o, low 8,,0,,1,1,,,0,1,,4,,1,0 9 4,,0,,,1,0 11 10 4,, i 1 T laling oniion a a vry g (u,v) wi poiiv riual apaiy mu aiy λ(u)+o(u,v) λ(v). T prlow o no aiy laling oniion or g (,), in 11+(-)<9. Givn prlow own low, ir in a laling a aii laling oniion or ow a r i no o lal a aii laling oniion. 8,,8 apaiy, o, low 8,,0,,0,1,,,0,4,,,,1,,1,0 4,,0,1,0 4,, i Ti prlow o no aiy laling oniion or any o lal, in,, orm a ngaiv o yl wi o +( 1)+( )=. - -