Fişierul intrare/ieşire:ierarhie.in, ierarhie.outSursăad-hoc
AutorDin FolclorAdăugată deioanabIoana Bica ioanab
Timp execuţie pe test0.1 secLimită de memorie16384 kbytes
Scorul tăuN/ADificultatenormalnormalnormalnormalnormal

Vezi solutiile trimise

Ierarhie

Andrei tocmai s-a angajat intr-o firma. Pentru a nu face nicio confuzie intre angajati, el si-ar dori sa cunoasca ierarhia din acea firma. Cu toate acestea, atunci cand s-a angajat, lui Andrei i s-a dar doar o lista cu seful direct al fiecarui angajat. Andrei nu se prea descruca cu aceasta lista. Stiind ca angajatii sunt numerotati de la 1 la n, el va roaga sa il ajutati sa afle atat cine este seful tuturor, cat si care sunt subordonatii directi ai fiecarui angajat.

Date de intrare

Fişierul de intrare ierarhie.in contine pe prima linie numarul natural N, ce reprezinta numarul de angajati. Pe cea de-a doua linie se afla N numere cu semnificatia ca numarul de pe pozitia i este seful direct al angajatului i.

Date de ieşire

În fişierul de ieşire ierarhie.out se va afisa pe prima linie seful tuturor angajatilor. Pe urmatoarele linii se va afla numarul angajatului si subordonatii sai directi, afişaţi în ordine crescătoare separati prin cate un spatiu. Daca un angajat nu are niciun subordonat direct, se va trece la angajatul urmator.

Restricţii

  • 1 ≤ N ≤ 2000
  • Daca un angajat nu are niciun sef direct, atunci acestuia i se va atribui numarul 0.

Exemplu

ierarhie.inierarhie.out
10
0 1 2 3 3 2 2 1 8 8
1
1 2 8
2 3 6 7
3 4 5
8 9 10

Explicatie

Seful tuturor este angajatul cu numarul 1.
Angajatul cu numarul 1 ii are ca subordonati pe angajatii 2 si 8.
Angajatul cu numarul 2 ii are ca subordonati pe angajatii 3, 6 si 8.
Angajatul cu numarul 3 ii are ca subordonati pe angajatii 4 si 5.
Angajatul cu numarul 8 ii are ca subordonati pe angajatii 9 si 10.

Trebuie sa te autentifici pentru a trimite solutii. Click aici