👤

Cerința
Se dau cele n-1 muchii ale unui arbore cu n noduri și un nod k . Afișați vectorul de tați al arborelui cu rădăcina în k.

Date de intrare
Fișierul de intrare arbore.in conține pe prima linie numerele n k, Următoarele n-1 linii vor conține câte o pereche i j, reprezentând muchiile arborelui.

Date de ieșire
Fișierul de ieșire arbore.out va conține pe prima linie elementele vectorului de tați al arborelui cu rădăcina în k, separate printr-un spațiu.

Restricții și precizări
1 ≤ n ≤ 100
1 ≤ k ≤ n
în vectorul de tați rădăcina este marcată cu 0


Răspuns :

Răspuns:

#include <fstream>

using namespace std;

ifstream fin("subarborenumarare.in");

ofstream fout("subarborenumarare.out");

int t[101], n, k;

void  subarborenumarare(int nod)

{

   if (nod == 0) return;

   

    subarborenumarare(t[nod]);

   fout << nod << ' ';

}

int main()

{

   fin >> n >> k;

   for (int i = 1; i <= n; i++)

       fin >> t[i];

   

    subarborenumarare(k);

}

Explicație: