.campion
conectare | înregistrare | căutare
Pagina principală » Probleme » johnie

ultima problemă
grupă: mică
sursă: OMI 2016
ultimul articol
autor: Prof. Radu Vişinescu
ultimul software
autor: Prof. Emanuela Cerchez
.campion
johnie


Timp maxim de executie/test:
0.5 secunde
Memorie totala disponibila/stiva:
16 MB/1 MB

Intr-o tara indepartata traia Johnie Walker, un personaj caruia ii placeau foarte mult plimbarile. In tara lui Johnie Walker exista N orase (numerotate de la 1 la N), iar intre anumite perechi de orase exista poteci. Johnie are dorinta de a umbla pe fiecare poteca din tara sa. Astfel, el s-a hotarat sa faca o mare plimbare, desfasurata in mai multe etape. In fiecare etapa Johnie porneste din orice oras din tara, parcurge un anumit drum si se opreste in ce oras doreste. Un drum este reprezentat de un sir de orase, astfel incat intre oricare 2 orase consecutive din sir exista o poteca. In plimbarea lui, Johnie doreste sa parcurga fiecare poteca o singura data. Lui ii este indiferent daca trece printr-un oras de mai multe ori, chiar in acelasi drum.

Cerinta

Dandu-se numarul de orase din tara si potecile dintre acestea, se cere sa se determine numarul minim de etape in care Johnie poate parcurge toate potecile. De asemenea, se cere si o modalitate de parcurgere a potecilor, pe etape.

Date de intrare

Pe prima linie a fisierului johnie.in sunt scrise doua numere naturale separate prin spatiu N, reprezentand numarul de orase si M, reprezentand numarul de poteci. Pe fiecare dintre urmatoarele M linii sunt scrise cate doua numere naturale distincte i j (cuprinse intre 1 si N) cu semnificatia ca exista o poteca de la orasul i la orasul j.

Date de iesire

Fisierul de iesire johnie.out va contine pe prima linie un numar natural min care reprezinta numarul minim de etape ale plimbarii. Urmatoarele min linii contin drumurile pe care le parcurge Johnie in fiecare etapa, cate un drum pe o linie. Primul numar de pe linia care descrie un drum reprezinta numarul de orase parcurse in drumul respectiv, iar urmatoarele numere reprezinta orasele parcurse, in ordinea parcurgerii. Numerele scrise pe aceeasi linie sunt separate prin cate un spatiu.

Restrictii si precizari

1 <= N <= 50000
1 <= M <= 100000
Intre doua orase pot exista mai multe poteci.
O poteca este bidirectionala.
•Nu exista poteci ce incep si se termina in acelasi oras.

Exemplu

johnie.in

johnie.out

7 7
1 2
1 3
1 4
2 3
3 5
4 5
6 7

2
7 1 4 5 3 2 1 3
2 6 7

Daniel Pasaila
Universitatea "Al. I Cuza", Iasi - Facultatea de Informatica
danielpasaila@yahoo.com

propunător: Prof. Emanuela Cerchez
emanuela.cerchez@gmail.com
Articole recomandate
Probleme recomandate
De la .campion 2006: scara, programs, nr, iepuras2, numere3, robot2, fry, suma, sah, formule, perm, cifra, repeat, ture, xor, policefm, unu, criptare, ed, bilete, vector, scor, ratb, infinit, race, dragon, kreg, placi, hanoig, red, 2sec, flood, sume3, balls, festival, croco, matrice3, pavaj, sume, arthur, kimberley, kafka, vocale, pento, prop, ro, sol, bacan, erdos, poligon, reduceri, druid, novel, gramezi, nrbinar, laser, spair, caravane, cuburi, grup, invest, cd, friends2, mese, toys
De acelaşi autor: matrice2, bile2, cuburi, maxq
Despre graf: gropi, tgv, matrice2, miniasm, picnic, mere, circuit, soldati, arce, conflicte, desen, robot, furtuna, net, cuvinte, excursie, cadere, pioni, reinvent, kreg, flood, croco, matrice, arthur, kimberley, ro, sol, caravane, bete, honest, police, pcod, zmeu, auto2, grazing, datorii, trafic, sponsori, monede1, apm, bile1, caini, masina1, bomboane, turn1, shgraf, paintball, program1, tgraf, kgb, algola, felinar, joc6, tric, homeless, promo, turism, casute, joc10, prieteni1, traseu, zapezi, litoral, lover, trip, garaj, ziduri, tv, pact, echipe1, vitale, spion, trasee, bcolor, scara2, lant, ab3, soc, team, gard, rsp, graf, mexc, dep, albinuta1, atac2, cabane, drumuri, tj, grade, jungla, lanterna, magic5, coment, urgenta, fazan, lanturi, cfr, site, traseu1, trmv, graphgame, minuni, telefon, ubergraf, carray, pestera, chei, arbgraf, war, fluviu, drumuri1, entries, ubuntzei, pack, fotbal1, pamant, dag, razboi, benzina2, wg, neconex, asfalt1, kubus2, module, progresii, dfs, prieteni3, megascoala, grafxy, dineu, vot1, biperm, drumuri2, nrgraf, cristal, cartite, copaci3, dragoni, nuclee
surse trimise | ajutor