2175. 重构树

有一棵 n(1\leq n \leq 1000) 个节点,n-1 条边,根为 1 号节点的有根树,被出题人藏起来了,你需要找到它。

这棵树上的每条边有一个编号,编号为 1n-1,每个点有一个编号,编号为 1n

设第 i 条边断开后,与根结点(1 号节点)仍然相连的点构成集合 S_i, 与根结点不相连的点构成集合 T_i

出题人偷偷告诉了你所有的 S_iT_i(1\leq i \leq n-1)

你需要还原这一棵树,也就是,输出除根结点之外每个点的父亲节点,以及它与父亲节点的边的编号。

输入

第一行一个整数 n(1\leq n \leq 1000)

接下来 2n 行,每行第一个数 m(1\leq m \leq n) 表示集合大小,后面 m 个数表示集合的元素。

每行代表的集合依次为 S_1, T_1, S_2, T_2, \dots, S_n, T_n

输出

输出 n-1 行, 每行两个整数。

i 行的输出为 i+1 号节点的父亲节点,以及 i+1 号节点和父亲节点之间的边的编号。

样例

标准输入 复制文本
5
4 1 3 4 5
1 2
3 1 2 5
2 3 4
4 1 2 4 5
1 3
2 1 2
3 3 4 5
标准输出 复制文本
1 1
4 3
5 2
1 4

来源

2024 华南师范大学百度杯新生赛 正式赛 Div.1 老生赛道

登录以提交代码。
单点时限 1 秒
内存限制 128 MB
提交 2
通过 2