Enunţ
Zăhărel a devenit primar în oraşul său, iar prima masură pe care o va lua va fi dezvoltarea turismului. În oraş există obiective turistice legate între ele prin străzi cu sens unic. Pentru a atrage cât mai mulţi turişti în oraşul său trebuie să existe posibilitatea formării unui traseu turistic astfel: se pleacă de lângă un obiectiv turistic, se parcurge fiecare stradă exact o dată şi se revine în locul din care s-a plecat, parcurgându-se fiecare obiectiv turistic cel puțin o dată. (Ideal ar fi să se poată construi un traseu care sa viziteze fiecare obiectiv turistic doar o dată, nu fiecare stradă, dar această problemă este prea grea).
Cerință
Scrieţi un program pentru Zăhărel care să determine numărul minim de străzi suplimentare care trebuie construite în oraş astfel încât să existe posibilitatea formării unui traseu turistic.
Date de intrare
Fişierul de intrare turism.in
conţine pe prima linie numerele naturale şi . Următoarele linii conţin perechi de numere întregi separate prin spaţii cu semnificaţia că există un o stradă cu sens unic de la obiectivul turistic la obiectivul turistic .
Date de ieșire
Fişierul de ieşire turism.out
va conţine pe prima linie un singur număr întreg reprezentând numărul minim de străzi suplimentare care trebuie construite în oraş astfel încât să existe posibilitatea formării unui traseu turistic. Următoarele linii conţin perechi de numere întregi separate prin spaţii cu semnificaţia că se va construi o stradă cu sens unic de la obiectivul turistic la obiectivul turistic .
Restricții și precizări
- ;
- ;
- Obiectivele turistice sunt numerotate cu numere întregi de la la ;
- Pot exista mai multe străzi cu sens unic între două obiective;
- Pentru un test se va acorda din punctaj dacă se determină corect numărul de străzi suplimentare,
din punctaj dacă se determină şi un set de străzi care respectă condiţiile din enunţ, respectiv
din punctaj dacă setul de muchii este minim din punct de vedere lexicografic - Un set de străzi este mai mic din punct de vedere lexicografic decât alt
set de străzi dacă există o poziţie astfel încât sau şi , iar pentru
Exemplul
turism.in
6 7
1 2
1 3
2 3
3 5
4 5
4 6
6 5
turism.out
4
3 1
5 1
5 4
5 4
Explicație
Un traseu turistic valid este:
(1, 2) (2, 3) (3, 1) (1, 3) (3, 5) (5, 4) (4, 6) (6, 5) (5, 4) (4, 5) (5, 1)