Tagy: grafy
Obtiažnosť: easy

Vytvor zoznam

Úloha

Na vstupe sa nachádza graf, zadaný ako dvojice vrcholov, medzi ktorými existuje hrana. Vypíšte na výstup zoznamy susedov pre jednotlivé vrcholy, pričom susedov vypíšte v usporiadanom poradí. Na usporiadanie je odporúčané použiť knižničnú funkciu sort v C++ alebo ekvivalent v Pythone. Vyhnete sa tak zbytočným chybám v algoritme potrebnom na usporiadanie.

Vstup

V prvom riadku sú čísla $1 \leq n \leq 10^5$ a $0 \leq m \leq 10^5$ -- počet vrcholov a hrán grafu.

Nasleduje $m$ riadkov, v každom riadku sú dve rôzne čísla $a$, $b$ -- $0 \leq a, b \leq n-1$ symbolizujúce obojsmernú hranu medzi vrcholmi $a$ a $b$ pričom vrcholy číslujeme od $0$.

Výstup

Na výstup vypíšte $n$ riadkov. V $i$-tom riadku vypíšte toľko čísel, koľko má $i$-ty vrchol susedov. $x$-té Číslo v $i$-tom riadku teda symbolizuje, že vrchol s tým číslom je sused vrcholu $i$, teda inými slovami existuje medzi nimi hrana. Čísla na samotných riadkoch vypisujte usporiadané a oddeľujte čísla medzerami. Za posledným číslom riadku vypíšte už iba znak \n, teda medzeru nevypisujte.

Príklad

Vstup

Výstup

4 5
0 1
0 2
1 2
1 3
3 2
1 2
0 2 3
0 1 3
1 2
Ak chceš riešiť túto úlohu, musíš sa najprv prihlásiť.