#include <bits/stdc++.h>
using namespace std;
const int N = 2e3 + 5;
int n, m, root;//编号为1 - m, n个节点
struct Node {
int c[N], len, fa, dep;
}a[N];
void inser(int x, int y) {
a[y].fa = x, a[x].c[++a[x].len] = y;
}
int find_root(int k) {
if (!a[k].fa) return k;
return find_root(k + 1);
}
void preorder(int x) {
if (!x) return ;
printf(