Documente Academic
Documente Profesional
Documente Cultură
Cristina FLAUT
GRAFURI
SI
COMBINATORICA
SEMINAR
2010
1
Laborator nr. 1
1) Principil includerii si al excluderii. Fie Ai ( i I = {1, 2, ..., q} ) submultimi ale
q
| =
i 1
| A |
i
i 1
| Ai Aj| + + (-1)
q+1
1 i j q
| Ai |.
i 1
Sn, m = m -
i 1
Ai+
1i j m
Ai Aj-
1 i j k m
Ai Aj Ak+
++ (-1)m Ai
i 1
Se observa ca
= , deoarece f(x) contine cel putin un element din Y , pentru orice functie
i 1
f : X Y . Dar cum putem elimina l elemente din Y in Cmk moduri, fiecare suma
| A | contine C
i
l
m
K {1,2 ,...m} i K
|K | l
In concluzie, avem
Sn, m = mn - Cm1 (m 1) n Cm2 (m 2) n ... ( 1) m1 Cmm1
In cazul in care m = n , Sn, m reprezinta numarul functiilor bijective f : X Y cu |X| = |Y| = n ,
deci Sn, m = n! si vom obtine identitatea:
n! = nn - Cn1 (n 1) n Cn2 (n 2) n ... ( 1) n1 Cnn1
6) Numarul tuturor numerelor prime cu un numar natural n si mai mici decat acesta se
numeste indicatorul lui Euler si se noteaza (n). Daca descompunerea in factori
1
1
a
primi a numarului n este p1a1 ... p q q , atunci (n) n(1 )...(1 ).
p1
pq
Demonstratie. Notam cu Ai multimea numerelor naturale mai mici sau egale cu n
n
n
care sunt multiplii de pi. Obtinem Ai
, Ai A j
, i j, etc. Numerele
pi
pi p j
natural mai mici ca n si prime cu n sunt numerele din multimea X={1,2,,n}si care
nu apartin nici uneia dintre multimile Ai, i{1,2,q}. Deci (n)=naplicam principiul includerii si excluderii.
i{1, 2 ,..., q}
Ai . Apoi
Probleme facultative
7) Un elev are n lei. In fiecare zi el cumpara exact unul din urmatoarele produse: un
covrig care costa 1 leu, o inghetata care costa 2 lei sau o prajitura care costa 2 lei,
pana la epuizarea intregii sume. In cate moduri poate sa cheltuiasca astfel cei n lei?
Demonstratie.
posibilitati: elevul cumpara un covrig, deci exista a n1 posibilitati de a cheltui cei n-1 lei
ramasi. El cumpara o inghetata si deci poate cheltui restul de bani in a n2 moduri si mai
raman de asemenea a n2 moduri de a cheltui restul de bani daca el cumpara o prajitura.
Rezulta ca
consecutive, o inghetata
2
x x 2 0,
cu
r1 2, r2 1 .
Solutia
generala
are
forma
2c c 1
a n c1 2 n c2 (1) n , unde c1 si c2 sunt solutiile sistemului: 1 2
. Solutiile
4
c
3
1
2
2
1
1 n1
acestui sistem sunt: c1 , c2 . Deci avem: a n ( 2
(1) n ) .
3
3
3
8) In tara Anciuria, condusa de presedintele Miraflores, s-a apropiat timpul noilor alegeri
prezidentiale. In tara sunt 20 de milioane de alegatori dintre care numai un procent (armata
regulata a Anciuriei) il sustine pe Miraflores. Miraflores, natural, doreste sa fie ales, dar pe
de alta parte el vrea ca alegerile sa para democratice. Iata ce numeste Miraflores ''votare
democratica'': toti alegatorii sunt impartiti in grupe egale, apoi fiecare dintre aceste grupe
se imparte intr-un numar oarecare de grupe egale, apoi acestea se impart din nou in grupe
egale s.a.m.d. ; in cele mai mici grupe se alege reprezentantul grupei - electorul apoi
electorii aleg reprezentantii lor pentru votare in grupele mai mari
s.a.m.d.; in sfarsit, reprezentantii celor mai mari grupe aleg presedintele. Miraflores a impartit
alegatorii asa cum a vrut el si si-a instruit simpartizantii cum sa voteze. Poate el organiza
''alegerile democratice'' astfel incat sa fie ales presedinte? (La egalitate de voturi castiga
opozitia.)
Inainte de toate sa vedem cum se poate ca in alegerile acestea ''cu mai multe trepte'' sa castige
candidatul pentru care voteaza minoritatea. (In multe tari se voteaza dupa acest sistem.) Cel mai
simplu exemplu care ilustreaza astfel de situatie este reprezentat in figura de mai jos. Aici sunt
noua alegatori - patru din grupa A (in desen, cerculet negru) si cinci din gruparea B (cerculet alb)
- care sunt impartiti in trei grupe de cate trei alegatori, asfel incat in doua grupe castiga cei din A
si deci ca rezultat al acestor alegeri
4 51 17
din numarul
9 100 75
Sa trecem la rezolvarea problemei. Impartim toti alegatorii in 5 grupe de cate 4 milioane, astfel
incat doua dintre grupe sa fie formate in intregime din adversari ai lui Miraflores
(vom numi aceste grupe de tip B, iar celelalte trei de tip A). Fiecare dintre aceste grupe de
''rangul intai'' le impartim din nou in cinci grupe de rangul al doilea, astfel incat din cele cinci
grupe care formeaza o grupa de tip A de rangul intai trei sa fie din A s.a.m.d. asa cum se vede in
tabelul de mai jos:
Rangul grupei r
Numarul total al 5
grupelor de rang r
52
53
54
55
56
57
24x57
28x57
32
33
34
35
36
37
39
311
256
16
In cate grupe de 5
rang r+1 se imparte
fiecare grupa de
rang r
16
16
Cate subgrupe de 3
tip A de rang r+1
are o grupa de tip A
de rang r
Este clar ca, in aceasta impartire, pentru victoria lui Miraflores e suficient ca pentru el sa voteze
311
177.147
1
Generalizare.
Se poate incerca sa se rezolve urmatoarea problema mai generala: care este numarul minim de
partizani ai lui Miraflores, astfel ca acesta sa castige ''alegerile democratice'', daca numarul total
de alegatori este N? Desigur ca raspunsul nu depinde numai de marimea numarului N ci si de
modul in care se descompune in factori. Daca N este prim, atunci alegatorii nu pot fi impartiti in
grupe egale (in afara de cazul banal: N grupe de cate un singur om) si pentru victorie este
necesara majoritatea simpla. Sa incercam sa raspundem la aceasta problema pentru un N
oarecare.
Sa consideram o astfel de descompunere a lui N in grupe (de rangul intai, al doilea
s.a.m.d.) astfel incat sa castige Miraflores si numarul partizanilor sai sa fie cel mai mic posibil.
Evident ca se poate considera ca in grupele care voteaza contra lui nu este nici un partizan de al
sau si ca toate grupele de tip A de acelasi rang sunt impartite la fel. Vom folosi notatia [...] 6
''partea intreaga'' ([x] este cel mai mare intreg care nu-l depaseste pe x). Evident ca daca o
anumita grupa de tip A este formata din k grupe de rangul urmator, atunci printre acestea trebuie
k k k
R 1 1 2 1... m 1
2 2 2
voturi pentru A. Problema noastra s-a redus la urmatoarea: sa se descompuna numarul dat N
intr-un produs de factori
k1 , k 2 ,..., k m ,
Fie N k1k 2 ...k m aceasta descompunere. Asa cum va rezulta din lema urmatoare, se
poate presupune ca in aceasta descompunere nu sunt factori k de forma k=pq, unde p si q sunt
mai mari decat 2 (daca exista astfel de factori, se poate continua descompunerea fara a mari pe R
).
p q pq
1,
1 1
2
2 2
p 2q 2 2 pq 4,
pq 2q 2 p 4 4,
p 2q 2 4,
ceea ce este evident, daca p>2 si q>2.
In cazul in care unul dintre numere, de exemplu p este par si celalalt q este impar, avem:
7
p q pq
1,
1 1
2
2 2
p 2q 1 2 pq 4,
pq 2q 2 p 2 0,
p 2q 1 0,
Cazul in care p si q sunt ambele impare se demonstreaza analog. De aici rezulta ca numerele
impare N trebuie descompuse in factori primi ''pana la capat''. Ramane sa analizam situatia
factorilor 2. Putem considera ca in descompunere nu sunt factori de forma 2q, unde q este impar,
intrucat
q 2q
2 1 1.
2 2
Din lema rezulta ca dintre factorii pari este suficient sa ne marginim numai la 2, 4 si 8. Mai
departe, este evident ca 2x2
este mai nefavorabil decat 4, intrucat
2
2
4
1 4 1 3. Este convenabil ca 2x 4 sa-l inlocuim cu 8, intrucat 2x
2
2
3=6>5; 4x 4 este mai bun decat 2x 8 intrucat 3x3=9 si 2x5=10; in sfarsit 4x 4x 4 este mai
putin convenabil decat 8x 8, intrucat 3x 3x 3=27 si 5x 5=25, astfel incat mai mult de doi de 4
nu se pot pastra.
d
p1 1 p m 1
...
. Atunci,
2
2
i)
ii)
Demonstratie. Daca presupunem ca nu are loc nici i) nici ii), atunci X contine cel mult a
obiecte distincte distincte doua cate doua si fiecare dintre acestea sunt orezente in cel mult a
2
10) In cate moduri se pot aseza k turnuri pe o tabla de sah cu m linii si n coloane,
astfel incat ele sa nu se poata ataca reciproc.
k
k! Cn C m .
11) Fie A o multime formata din 19 numere intregi, distincte doua cate doua, care
apartin progresiei aritmetice 1, 4, 7,....,100. Sa se arate ca exista doi intregi
distincti in A a caror suma este egala cu 104.
Demonstratie. Fiecare din cele 19 numere din A apartin uneia din urmatoarele 18 multimi
disjuncte doua cate doua:
{1}, {52}, {4, 100}, {7, 97}, {10, 94}, ...,{49, 55}.
Deci exista doi intregi distincti din A care apartin uneia din perechile {4, 100}, ...,{49, 55} si
care au suma egala cu 104.
10
Laborator nr. 2.
Nota. Pentru acest laborator, va recomand recapitularea urmatoarelor notiuni: graf
orientat si neorientat, gradul unui varf, drumuri, lanturi, componente tare-conexe si
conexe, matrice de adiacenta. Aceste notiuni le puteti gasi in cursul de Algoritmica
grafurilor, paginile 5-10 si 13-14.
11
2) Exista un graf cu 10 varfuri pentru care sirul gradelor varfurilor este respectiv:
1, 1, 1, 3, 3, 3, 4, 6, 9?
Demonstratie. Varful de grad 9 trebuie sa fie adiacent cu toate celelalta varfuri ale grafului,
deci si cu varfurile de grad 1. Rezulta ca varful de grad 7 poate fi adiacent cu numai 9-3 = 6
varfuri, contradictie.
3) Sa se arate ca intr.-un graf neorientat, numarul varfurilor de grad impar este par.
k C1 n (d n 1).
Deoarece k ik , obtinem d k d ik k 1, deoarece toate varfurile adiacente cu xik se
gasesc in in componenta C1 . Contradictie, deoarece din ipoteza avem k n d n 1.
Rezulta ca d k k , ceea ce trebuia demonstrat.
i {1,2,..., p}. Fiecare componenta conexa este un graf conex, deci avem ca mi ni 1 .
12
Probleme facultative
7) Se considera o tabla de sah cu n linii si n coloane, n impar. Poate un cal de pe
tabla de sah, sarind in L, sa treaca odata si numai odata prin toate cele n2 patrate
ale tablei, intorcandu-se in punctul de plecare? (Euler)
Demonstratie. Fie G graful cu n2 varfuri care corespund patratelor tablei de sah, doua
varfuri fiind adiacente daca exista o saritura in L a calului de pe un patrat pe altul. Deoarece
calul sare de pe un patrat de o culoare pe un patrat de alta culoare, rezulta ca acest graf este
bipartit. Deci acest graf nu contine cicluri elementare cu un numar impar de varfuri, deci nu
exista ciclu elementar cu n2 varfuri. Deci, problema nu are solutie.
Demonstratie. Presupunem ca cele doua culori sunt rosu si albastru. Pentru orice colorare
vor exista doua puncte M si N de aceeasi culoare, sa presupunem rosu. Daca mijlocul P al
segmentului MN este rosu, am gasit trei puncte coliniare echidistante de aceeasi culoare. In
caz contrar, sa presupunem ca P este albastru. Daca simetricul N1 al lui N fata de M este
rosu, punctele N1, M, N sunt rosii. Daca N1 este albastru, vom considera simetricul M1 al lui
M fata de N. Daca M1 este rosu, punctele cautate sunt M, N, M1. In caz contrar M1 este
albastru si deci N1, P, M1 sunt trei puncte coliniare si echidistante albastre.
Deci oricum am colora punctele
planului cu rosu si cu albastru, vor exista
trei puncte coliniare si echidistante de
aceeasi culoare, sa presupunem rosu. Sa
notam punctele cu A, B, C. Construim
triunghiul echilateral AFC astfel incat B,
E, D sa fie mijloacele latuilor. Daca F
este rosu, AFC este triunghiul cautat. In
caz contrar F este albastru. Daca D si E
sunt albastre, triunghiul echilateral DEF
are varfurile albastre, deci el este cel
cautat. In caz contrar, cel putin unul din
punctele D si E este rosu. Sa presupunem
ca D este rosu, deci triunghiul ABD are proprietatile cerute. Pentru a arata ca exista colorari
cu 2 culori ale punctelor planului pentru care nici un triunghi echilateral de latura 1 nu are
varfurile de aceeasi culoare, om considera planul raportat la un sistem ortogonal de axe xOy.
3
k cu k intreg partitioneaza planul intr-o retea de benzi paralele. Vom
2
3
3
considera ca banda marginita de dreptele
k si
(k 1) contine toate punctele
2
2
3
3
dreptei
k sin u contine nici un punct al dreptei
(k 1) . Vom colora acum punctele
2
2
Dreptele y
planului cu rosu si albastru, astfel incat toate punctele unei benzi sa aiba aceeasi culoare, iar
oricare doua benzi vecine sa fie de culori diferite. Deoarece fiecare banda are latimea de
3
, egala cu inaltimea unui triunghi echilateral de latura 1, rezulta ca orice triunghi
2
echilateral de latura 1 are varfurile in doua benzi vecine, deci nu are varfurile de aceeasi
culoare.
14
Demonstratie. Daca toate punctele planului au aceeasi culoare, proprietatea este evidenta.
In caz contrar, vor exista doua puncte A, B la distanta 2, colorate diferit. Intr-adevar, oricare
doua puncte ale planului care au culori diferite pot fi unite printr-o linie poligonala cu toate
laturile de lungime 2 si una
din aceste laturi trebuie sa
aiba extremitatile de culori
diferite. In figura alaturata,
presupunem
ca
3.
11) Oricum am alege trei numere intregi distincte doua cate doua, exista cel putin
3
multiplu de 5. Daca unul din cele trei numere este multiplu de 5, problema este rezo-lvata. Sa
presupunem contrariul, deci ultima cifra a celor trei numere apartine multi-mii {1, 2, 3, 4, 6,
7, 8, 9}. Vom arata ca oricum am alege trei numere distincte din aceasta multime, exista doua
cu suma sau diferenta multiplu de 5.
Sa consideram gra-ful cu 8 varfuri, din figura alaturata, pentru care doua varfuri i si j
sunt adiacente daca si numai daca i+j sau i-j este multiplu de 5. Acest graf consta din doua
subgrafuri complete C1={1, 4,
6, 9} si C2 ={2,3,7,8}. Deci
oricum am alege trei varfuri
distincte ale acestui graf, exista
cel putin doua care fac perte
dintr-o aceeasi componenta
conexa a lui G, care au deci
suma sau diferenta multiplu de
5, ceea ce demonstreaza
proprietatea.
(I. Tomescu, baraj II, O. I. M.,
1980)
16
Laborator nr. 3.
ii)
17
2) Folosind algoritmul lui Malgrange, determinati componentele tare conexe pentru grafurile:
18
i)
0
ii)
19
20
Laborator nr. 4.
Solutie. Se foloseste algoritmul Roy-Floyd. Distanta minima este 10. Un drum minim este
{0,1,2,3,4,5}.
2) Sa se determine distanta si drumurile minime dintre varful 0 si varful 6 pentru graful de mai
jos, folosind algoritmul Roy-Floyd .
21
Solutie. Se foloseste algoritmul Roy-Floyd. Distanta minima este 6 si se atinge pentru drumul
A={0,1,4,6}.
3)
Sa se determine distanta si drumurile minime dintre varful 0 si varful 5 pentru graful de
mai jos, folosind algoritmul Roy-Floyd.
22
Laborator nr. 5.
3) Sa se determine distanta minimea dintre varful 0 si varful 7, pentru graful de mai jos, folosind
algoritmul Dantzing 2.
23
24
Laborator nr. 6.
Nota. Pentru acest laborator, va recomand recapitularea urmatoarelor notiuni:
matricea distantelor directe intr-un graf, algoritmul lui Yen. Aceste notiuni le puteti
gasi in cursul de Algoritmica grafurilor, paginile 47-51.
1) Dintr-o harta a unui judet, o firma de constructii drumuri si poduri si-a extras o
configuratie cuprinznd 9 localitati si soselele intermediare dintre aceste localitati. Pentru
a se construe un drum asfaltat intre localitatile 0 si 8, s-a facut un studiu, in functie de
distanta dintre localitati, numarul podurilor ce vor fi construite, cheltuielile cu materialele
de constructii, etc., on urma caruia s-a stabilit un prt mediu pentru fiecare sosea
intermediara., prt ce este trecut pe fiecare arc (i, j). Se cere sa se intocmeasca un proiect
pentru asfaltarea unei sosele intre localitatile 0 si 8, astfel incat cheltuielile necesare sa fie
minime, iar drumul sa treaca prin localitatea 5. In cazul in care exista mai multe rute
pentru care costul total este acelasi, exista vreo ruta pentru care se manifesta un interes
mai mare?
Solutie. Folosim algorimul lui Yen. Valoarea minima este 19, iar drumurile minime sunt:
A={0,1,5,6,7,8}, B={0,1,6,7,8}, C={0,1,5,7,8}. A si C trec prin localitatea 5. Este de preferat A,
pentru ca trece prin mai multe localitati.
2) Sa se determine distanta si drumurile minime dintre varful 1 si varful 9, pentru graful de mai
jos, folosind algoritmul lui Yen.
25
Solutie. Distanta minima este 8 si se atinge pentru drumurile A={0,2,5,3,7} si B={0, 2, 3, 7}.
4)Verificati rezultatele obtinute si cu ajutorul calculatorului, folosind algoritmul implementat in
C++( cursul de Algoritmica grafurilor-Program 6, pag37).
Laborator nr. 7.
Nota. Pentru acest laborator, va recomand recapitularea urmatoarelor notiuni:
matricea distantelor directe intr-un graf, algoritmul Bellman-Kalaba( varianta minima
si maxima). Aceste notiuni le puteti gasi in cursul de Algoritmica grafurilor,
paginile 51-54.
1) Sa se determine distanta si drumurile minime dintre varful 0 si varful 7, pentru graful de mai
jos, folosind algoritmul Bellman-Kalaba, varianta minima.
27
5)
Sa se determine distanta si drumurile maxime dintre varful 1 si varful 8, pentru graful de
mai jos, folosind algoritmul Bellman-Kalaba, variant maxima.
28
6)
Sa se determine distanta si drumurile maxime dintre varful 0 si varful 8, pentru graful de
mai jos, folosind algoritmul Bellman-Kalaba, varianta maxima.
Laborator nr. 8.
Nota. Pentru acest laborator, va recomand recapitularea urmatoarelor notiuni: Grafuri
Euleriene si Hamiltoniene, determinarea unui drum Hamiltonian intr-un graf orientat,
algoritmul lui Fleury pentru trasarea unui ciclu Eulerian, determinarea numarului
minim de lanturi cu care poate fi acoperita o figura. Aceste notiuni le puteti gasi in
cursul de Algoritmica grafurilor, paginile 60-65 si 69-71.
1) Fie 5 produse Pi (i 1, ,5) , care vor trebui prelucrate corespunztor unei relaii de ordine
stabilite datorit necesitilor produciei. Relaiile de ordine sunt urmtoarele:
- produsul P2 precede produsele P1 , P4 i P5 ;
- produsul P3 precede produsele P2 i P4 ;
- produsul P4 precede produsele P1 i P5 ;
- produsul P5 precede produsele P1 .
Se cere s se cerceteze dac e posibil prelucrarea produselor innd cont de relaiile de
ordine stabilite; dac acest lucru este posibil, se cere s se determine succesiunea n care s
poate face prelucrarea.
Figura 1.
Rezolvare.
Vom defini un graf G, ca n Figura 1, care are 5 vrfuri corespunztoare produselor date.
Problema va reveni la a determina un drum hamiltonian n acest graf care nu are circuite.
Matricea terminal corespunztoare este:
30
P1 P2 P3 P4 P5
0
1
T 1
1
1
0
0
1
0
0
0
0
0
0
0
0
1
1
0
0
0
1
1
1
0
P1
P2
P3
P4
P5
N N 1
, graful G are un
2
drum hamiltonian; succesiunea vrfurilor grafului, dat de ordinea descresctoare a puterilor de
atingere, determin drumul hamiltonian d H P3 , P2 , P4 , P5 , P1 , care ne d i ordinea de
prelucrare a produselor.
Exercitiul 2. Prelucrarea unui produs oarecare impune s treac prin 6 secii folosind benzile
de transport existente ntre aceste secii benzi ce sunt reprezentate prin arcele grafului G din
Figura 2
Figura 2.
31
Rezolvare.
i aceast problem va reveni la cercetarea drumurilor hamiltoniene pentru graful considerat.
Din matricea drumurilor
1 2 3 4 5 6
0
1
1
T
1
1
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
1
1
0
1
2
3
4
5
6
0
0
0
T'
0
0
0
1
0
0
0
0
0
2 6 3 1
0
0
0
0
0
0
1
1
1
0
0
0
1
0
1
0
0
0
1
1
1
0
1
0
4
5
2
6
3
1
Adugarea acelor 5,2 i 6,3 , ceea ce corespunde la instalarea benzilor ntre seciile
5,2 i 6,3 , asigu transportul produsului ntre cele 6 secii, care va trebui organizat n ordinea:
4,5,2,6,3,1 .
32
Figura 3.
B*
0
0
0
0
1
0
0
0
1
1
0
0
1
1
1
0
C 1
C 2
C 5
C 7
3
3
33
4 1 2 5 6 8 7 ,
1 3 2 5 6 8 7 ,
4 1 2 6 8 5 7 , 4 1 3 2 6 8 5 7 .
3 4 2 6 8 5 7 ,
7)
Raspuns. Avem 5 noduri, unul par si 4 impare. Deci desnul se poate realiza numai din
4
2 trasaturi de condei.
2
8)
Tabla de sah se poate desena dintr-o singura trasatura de condei? Se face abstractie de
faptul ca are doua culori.
Raspuns. In interior tabla de sah are 7x7=49 noduri pare, care nu excul posibilitatea unei solutii,
oricat de mare ar fi numarul lor. Colturile sunt noduri pare, sau nici nu sunt noduri, deoarece in
fiecare colt se intalnesc numai cate doua linii, sau, mai bine zis, prin fiecare colt trece cate o
singura linie franta. Nodurile periferice, in afara de colturi, in numar de 4x7=28, sunt toate
impare. Deci desenul se poate realiza numai din
34
28
14 trasaturi.
2
35
Laborator nr. 9.
Nota. Pentru acest laborator, va recomand recapitularea urmatoarelor notiuni: retea de
transport, flux complet, flux maxim, algoritmul Ford-Fulkerson( varianta maximaprimul procedeu de etichetare). Aceste notiuni le puteti gasi in cursul de Algoritmica
grafurilor, paginile 72-76.
1) Determinati un flux nenul compatibil cu reteaua de transport de mai jos in care fluxul initial
este nul.
36
3) Sa se determine fluxul maxim care traverseaza reteaua de mai jos, folosind algoritmul
Ford-Fulkerson, varianta maxima-primul procedeu de etichetare.
37
2) Intre sapte puncte ale unei ferme agricole, exista o retea de canale reprezentata in graful
de mai jos, unde pe fiecare arc este trecut debitul maxim ce poate strabate canalul
corespunzator. Stiind ca apa porneste din punctual zero si in punctual 6 exista un lot care
are cea mai mere nevoie de apa, se cere sa se determine modul in care trebuie folosita
reteaua de canale, astfel incat, in punctul 6 sa ajunga un debit maxim.
38
39
1) Intr-o zona muntoasa, in localitatea 1 exista un emitator care trebuie legat prin
radio-relee de localitatile 2, 3,,9. Din anumite motive, legaturile directe intre
toate perechile de localitati nu sunt posible. Costurile tuturor legaturilor posibile
sunt date in tabelul de mai jos. Sa se determine numarul minim de legaturi directe
astfel incat sa avem legatura intre toate localitatile.
1
1 0
2 8
3 1
4 2
5 5
6 1
8 7
Indicatie. Se ataseaza un graf neorientat tabelului de mai sus si se foloseste algoritmul Prim
sau Kruskal.
2) Folositi ambii algoritmi, Prim si Kruskal, pentru exercitiul 1 si apoi verificati
rezultatul cu ajutorul calculatorului, folosind Programul 8 din cursul de
Algoritmica grafurilor, pagina 91.
40
41
formata, dupa care scoateti primul element din noua gramada, organizand, din
nou, multimea ramasa sub forma de gramada.
5) Pentru verificarea rezultatului de la exercitiul 4, folositi calculatorul, utilizand
Programul 9 de la pagina 96 din cursul de Algoritmica grafurilor.
43
Orice
ciclu
elementar
din
este
de
forma
L2 {x1 , w1 ,..., wk , y} de
L1 si muchiile lui
L2 este impar,
l 2 l ' 2 l ' ' 2 , rezulta ca l1 si l2 au aceeasi paritate. Deci varfurile din componenta conexa
care-l contine pe x1 pot fi colorate in acest mod cu doua culori. Continuam procedeul
pentru toate componentele conexe ale grafului si obtinem o colorare cu doua culori a si r a
vatfurilor lui G astfel incat oricare doua varfuri adiacente sa aiba culori diferite. Rezulta ca
G este bipartit.
2) Folosind algoritmul lui Zykov, sa se determine numarul minim de culori cu care poate
fi colorata figura de mai jos, astfel incat doua zone vecine sa fie colorate diferit.
45
3) Determinati numarul cromatic al grafului de mai jos, folosind algoritmul lui Zykov.
46
II) La acest subiect, se va face doar una dintre problemele de mai jos.
1) Sa se determine distanta si drumurile minime dintre varful 0 si varful 7, pentru graful de mai
jos, folosind unul dintre algoritmii cunoscuti. Descrieti, in prealabil, algoritmul ales.
Solutie. Distanta minima este 11 si se atinge pentru drumurile A={0,4,3,5,6,7}, B={1, 4, 5, 7},
C={1, 3, 7}, D={1, 2, 7}.
2)Sa se determine distanta si drumurile maxime dintre varful 0 si varful 5, pentru graful de mai
jos.
47
III) 1) Se considera un graf conex, G=(X,U) care are atasat pentru fiecare muchie existenta o
valoare pozitiva, X={x1,,xn}. Se determina recursiv un subgraf G=(X,U) al grafului G
astfel:
Pasul 1: Subgraful G=(X1, U1), X1={x1}, U1=vida;
Pasul i: Subgrafului G=(Xi-1, Ui-1), construit la pasul anterior, i se va adauga la multimea de
varfuri cel mai apropiat varf de multimea de varfuri Xi-1, varf care nu a mai fost selectat inca, si
la multimea de muchii, muchia formata de varful nou introdus cu varful din Xi-1 fata de care am
obtinut valoarea minima.
Algoritmul se termina atunci cand am selectat toate varfurile.
i) Algoritmul descris mai sus este: a) algoritmul Roy-Floyd; b) algoritmul Dantzing 2; c)
algoritmul Yen; d) algoritmul Prim; e) nicio varianta nu este corecta.
ii) Ce se obtine in urma aplicarii acestui algoritm?
2)In urma aplicarii algoritmului Roy-Floyd, obtinem urmatorul rezultat:
Prima linie a matricei distantelor:
1
10
10
20
10
{1}
{1}
{1,2}
{3}
{3}
{4,5}
{5,6}
{6,7}
{4,5}
{8,9}
48
49