atcoder#AGC029F. [AGC029F] Construction of a tree

[AGC029F] Construction of a tree

分数 : 22002200

问题陈述

给定 N1N-1 个子集 {1,2,...,N}\{1,2,...,N\}。设第 ii 个集合为 EiE_i

我们从每个集合 EiE_i 中选择两个不同的元素 uiu_iviv_i,并考虑一个图 TT,该图有 NN 个顶点和 N1N-1 条边,其顶点集为 {1,2,..,N}\{1,2,..,N\},边集为 (u1,v1),(u2,v2),...,(uN1,vN1)(u_1,v_1),(u_2,v_2),...,(u_{N-1},v_{N-1})。 确定是否可以通过适当地选择 uiu_iviv_i 使得 TT 成为一棵树。 如果可以,进一步找出一组 (u1,v1),(u2,v2),...,(uN1,vN1)(u_1,v_1),(u_2,v_2),...,(u_{N-1},v_{N-1}) 使得 TT 实际上是一棵树。

约束条件

  • 2N1052 \leq N \leq 10^5
  • EiE_i{1,2,..,N}\{1,2,..,N\} 的一个子集。
  • Ei2|E_i| \geq 2
  • 所有 Ei|E_i| 的总和至多为 2×1052 \times 10^5

输入

输入通过标准输入以以下格式给出:

NN

c1c_1 w1,1w_{1,1} w1,2w_{1,2} ...... w1,c1w_{1,c_1}

::

cN1c_{N-1} wN1,1w_{N-1,1} wN1,2w_{N-1,2} ...... wN1,cN1w_{N-1,c_{N-1}}

这里,cic_i 表示 EiE_i 中的元素数量,wi,1,...,wi,ciw_{i,1},...,w_{i,c_i}EiE_i 中的 cic_i 个元素。 这里,2ciN2 \leq c_i \leq N1wi,jN1 \leq w_{i,j} \leq N,且 wi,jwi,kw_{i,j} \neq w_{i,k} (1j<kci1 \leq j < k \leq c_i)。

输出

如果 TT 不能成为一棵树,打印 -1;否则,打印满足条件的 (ui,vi)(u_i,v_i) 的选择,格式如下:

u1u_1 v1v_1

::

uN1u_{N-1} vN1v_{N-1}

5
2 1 2
3 1 2 3
3 3 4 5
2 4 5
1 2
1 3
3 4
4 5

例如,如果选择如下:

  • E1E_1 中选择 (1,2)(1, 2)
  • E2E_2 中选择 (1,3)(1, 3)
  • E3E_3 中选择 (3,4)(3, 4)
  • E4E_4 中选择 (4,5)(4, 5)
6
3 1 2 3
3 2 3 4
3 1 3 4
3 1 2 4
3 4 5 6
-1
10
5 1 2 3 4 5
5 2 3 4 5 6
5 3 4 5 6 7
5 4 5 6 7 8
5 5 6 7 8 9
5 6 7 8 9 10
5 7 8 9 10 1
5 8 9 10 1 2
5 9 10 1 2 3
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
9 10