Imi¦ i nazwisko ...
Egzamin z Algorytmiki, 12.06.2013 cz¦±¢ I
UWAGA: W pytaniach 2,3,5 za prawidªow¡ odpowied¹ na zadane pytanie przyznajemy liczb¦ punktów podan¡
obok pytania, za nieprawidªow¡ odpowied¹ odejmujemy t¦ sam¡ liczb¦ punktów. W przypadku braku odpowiedzi nie przyznajemy »adnych punktów.
1. (0...4 pkt.)
• (0...1 pkt.) Wpisz w kratki na rysunku dowolny maksymalny przepªyw.
• (0...1 pkt.) Zaznacz na rysunku dowolny minimalny przekrój.
• (0..2 pkt.) Ile iteracji mo»e dla sieci z rysunku wykona¢ algorytm Dinica, podaj wszystkie mo»liwo±ci:
s t
/6 /6
/1
/1 /4
/10 /1 /2
/3
/8
2. (-2...2 pkt.) Dany jest graf nieskierowany G = (V, E) i funkcja w : E → R opisuj¡ca wagi kraw¦dzi (wagi mog¡ by¢ ujemne, ale G nie zawiera ujemnych cykli). Ponadto dane s¡ wierzchoªki s, t ∈ V . Który z poni»szych algorytmów znajduje najkrótsz¡ (w sensie wag) ±cie»k¦ prost¡ z s do t? (odpowiedz TAK/NIE)
• (-1...1 pkt.) algorytm Bellmana-Forda . . . .
• (-1...1 pkt.) algorytm Johnsona . . . .
3. (-6...6 pkt.) Czy poni»sze problemy s¡ NP-zupeªne (o ile P6=NP)? Odpowiedz TAK/NIE.
• (-2...2 pkt.) Dany graf skierowany G = (V, E) wraz funkcj¡ w : E → N, oraz dwa wierzchoªki s, t ∈ V i liczba D ∈ N. Stwierdzi¢, czy istnieje ±cie»ka prosta z s do t o ª¡cznej wadze T. . . .
• (-2...2 pkt.) Dany graf dwudzielny G i liczba k. Stwierdzi¢, czy istnieje w G zbiór niezale»ny o rozmiarze k. . . .
• (-2...2 pkt.) Dana formuªa φ(x1, . . . , xn)w postaci 3-CNF, w której ka»da z klauzul zawiera zmienne o trzech kolejnych numerach, np. (x5∨ ¬x6∨ ¬x7). Stwierdzi¢, czy φ jest speªnialna. . . .
4. (0...2 pkt.) Jaki wspóªczynnik aproksymacji ma algorytm 2-aproksymacyjny dla problemu VERTEX- COVER (ten ze skojarzeniem) je±li wykonamy go na grae b¦d¡cym cyklem? Narysuj pesymistyczny przy- padek.
5. (-2...2 pkt.) Je±li do programu liniowego o N bazowych rozwi¡zaniach dopuszczalnych dopiszemy jedn¡
nierówno±¢, to liczba bazowych rozwi¡za« dopuszczalnych nowego programu mo»e by¢
• (-0.5...0.5 pkt.) < N . . . .
• (-0.5...0.5 pkt.) = N . . . .
• (-0.5...0.5 pkt.) > N . . . .
• (-0.5...0.5 pkt.) > 2N . . . .
6. (0...4 pkt.) Dana jest sie¢ G = (V, A) wraz z funkcj¡ c : A → R+ opisuj¡c¡ przepustowo±ci kraw¦dzi, oraz dwa wierzchoªki s, t ∈ V . Podaj program liniowy opisuj¡cy maksymalny przepªyw w G z s do t oraz program do niego dualny.
7. (0...2 pkt.) Który z algorytmów dla problemu otoczki wypukªej jest asymptotycznie szybszy, je±li otoczka ma rozmiar O(1), a dane wej±ciowe s¡ posortowane po y/x: algorytm Grahama (to ten ze stosem), czy Jarvisa (owijanie prezentów)? Krótko uzasadnij.
8. (0...1 pkt.) Algorytm sprawdzaj¡cy, czy dany graf dwudzielny G ma doskonaªe skojarzenie (ten z wykªadu) oblicza warto±¢ wyznacznika pewnej macierzy. Je±li G ma doskonaªe skojarzenie, to
• ten wyznacznik ma warto±¢ 0,
• ten wyznacznik ma warto±¢ 6= 0,
• obie sytuacje s¡ mo»liwe.
9. (0...3 pkt.) Algorytm Strassena oparty jest na rekurencyjnym u»yciu metody mno»enia macierzy 2 × 2 za pomoc¡ 7 mno»e« i 16 dodawa«. Rozwa»my analogiczny algorytm oparty na metodzie mno»enia macierzy 16 × 16za pomoc¡ 350 mno»e« i 800 dodawa«. Czy ten algorytm jest szybszy czy wolniejszy ni» algorytm Strassena? Krótko uzasadnij.
10. (0...4 pkt.) Zaproponuj algorytm PRAM CRCW, który dla danego tekstu T [1, . . . , n] i wzorca P [1, . . . , n]
• (0...3 pkt.) stwierdzi, czy P wyst¦puje w T ,
• (0...1 pkt.) znajdzie jedno wyst¡pienie P w T (tu mo»na zaªo»y¢, »e P wyst¦puje w T ).
Uzasadnij krótko poprawno±¢ i zªo»ono±¢ (czas i liczba procesorów).
Uwaga: Ocenie podlega przede wszystkim poprawno±¢ algorytmu oraz zªo»ono±¢ czasowa. Liczba proce- sorów wpªywa na ocen¦, ale jest du»o mniej istotna.