#agc029f. [agc029_f]Construction of a tree

[agc029_f]Construction of a tree

题目描述

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

从每个集合EiE_i中选择两个不同的元素uiu_iviv_i,构建一个NN个顶点和N1N-1条边的图TT,其中顶点集为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_i1,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,3w_{1,3} ... w1,c1w_{1,c_1} :: cN1c_{N-1} wN1,1w_{N-1,1} wN1,2w_{N-1,2} wN1,3w_{N-1,3} ... wN1,cN1w_{N-1,c_{N-1}}

这里,cic_i代表EiE_i中元素的个数,wi,1,...,wi,ciw_{i,1},...,w_{i,c_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}

样例输入 1

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

样例输出 1

1 2
1 3
3 4
4 5

样例输入 2

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

样例输出 2

-1

样例输入 3

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

样例输出 3

1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
9 10