Razapinjajuca stabla
Zadatak 5: Izgradnja cesta
Zemlja ima $n$ gradova i $m$ cesta izmeÄu njih. Cilj je izgraditi nove ceste tako da postoji ruta izmeÄu bilo koja dva grada.
VaĆĄ zadatak je saznati minimalan broj potrebnih cesta, te odrediti koje ceste treba izgraditi.
Input: U prvom retku za unos nalaze se dva cijela broja $n$ i $m$: broj gradova i cesta. Gradovi su oznaÄeni brojevima $1,2,âŠ,n$.
Nakon toga slijedi $m$ redaka koji opisuju ceste. Svaki red ima dva cijela broja $a$ i $b$: ako postoji cesta izmeÄu tih gradova.
Cesta uvijek povezuje dva razliÄita grada, a izmeÄu bilo koja dva grada postoji najviĆĄe jedna cesta.
Output: Prvo ispiĆĄite cijeli broj $k$: broj potrebnih cesta.
Zatim ispiĆĄite $k$ redaka koji opisuju nove ceste. MoĆŸete ispisati bilo koje valjano rjeĆĄenje.
Input:
4 2
1 2
3 4
Output:
1
2 3
Zadatak 8: Popravak ceste
Postoji $n$ gradova i $m$ cesta izmeÄu njih. NaĆŸalost, stanje na cestama je toliko loĆĄe da se ne mogu koristiti. VaĆĄ zadatak je popraviti neke od cesta kako bi izmeÄu bilo koja dva grada postojala ruta.
Za svaku cestu znate njenu cijenu popravka i trebali biste pronaÄi rjeĆĄenje gdje je ukupni troĆĄak ĆĄto je moguÄe manji.
Input: U prvom retku za unos nalaze se dva cijela broja $n$ i $m$: broj gradova i cesta. Gradovi su oznaÄeni brojevima $1,2,âŠ,n$.
Nakon toga slijedi $m$ redaka koji opisuju ceste. Svaki red ima tri cijela broja a, b i c koji oznaÄava da postoji cesta izmeÄu gradova a i b, a cijena njezine popravke je c. Sve ceste su dvosmjerne.
Sve ceste su izmeÄu dva razliÄita grada, a izmeÄu dva grada postoji najviĆĄe jedna cesta.
Output:
IspiĆĄite jedan cijeli broj: minimalni ukupni troĆĄak popravka. MeÄutim, ako nema rjeĆĄenja, ispiĆĄite âNEMOGUÄEâ.
Input:
5 6
1 2 3
2 3 5
2 4 2
3 4 8
5 1 7
5 4 4
Output:
14