题目描述 给定一个三叉树,小于 $100$ 的值代表树叶,大于 $100$ 的值为分支点。 建树的过程是水平方向建树。 输入格式:先输入 $n$,代表有 $n$ 组数据,接下来 $n$ 行,每行输入 $4$ 个数,第一个数代表根节点,接下来分别代表三个子节点,$-1$ 代表子节点不存在,输入的顺序按照层次遍历的次序。 接下来,要求寻找叶子节点的最短路径,最短路径是指不经过重复的边。 输入方式,首先输入一个值 $m$,代表 $m$ 行,接下来 $m$ 行输入 $m$ 个叶子节点和对应的优先级,要求按优先级输出从上次到达的位置到该节点的最短路径,每条路径的最后一个节点要求输出目标叶子节点,最后要求回到根节点。 具体见样例。 输入格式 第一行输入一个整数 $n$,表示有 $n$ 组数据。 接下来的 $n$ 行,每行输入 $4$ 个整数,表示一个节点及其三个子节点。 然后输入一个整数 $m$,表示有 $m$ 个查询。 接下来的 $m$ 行,每行输入一个叶子节点和对应的优先级。 输出格式 对于每个查询,输出从上次到达的位置到该叶子节点的最短路径,路径的最后一个节点为目标叶子节点。 最后要求回到根节点。 输入样例 10 100 101 108 107 101 1 102 2 108 103 104 105 107 17 109 18 102 3 4 5 103 7 8 9 104 10 106 11 105 15 16 -1 109 19 20 21 106 12 13 14 5 8 1 14 3 16 2 5 0 19 4 输出样例 100 101 102 5 5 102 101 100 108 103 8 8 103 108 105 16 16 105 108 104 106 14 14 106 104 108 100 107 109 19 19 109 107 100