CF1798B.Three Sevens

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Three Sevens

题目描述

彩票“三个七”持续举办了 mm 天。在第 ii 天,有 nin_i 个编号为 ai,1,,ai,nia_{i,1}, \ldots, a_{i,n_i} 的人参与了抽奖。

已知在每一天(共 mm 天)中,只有一名中奖者会从当天的参与者中被选出。第 ii 天的中奖者在接下来的第 i+1i+1 天到第 mm 天中不允许再参与抽奖。

不幸的是,关于中奖者的信息已经丢失。你需要找出从第 11 天到第 mm 天可能的中奖者名单,或者判断是否不存在这样的方案。

输入格式

每个测试点包含多个测试用例。第一行包含一个整数 tt1t500001 \le t \le 50000),表示测试用例的数量。接下来是每个测试用例的描述。

每个测试用例的第一行包含一个整数 mm1m500001 \le m \le 50000),表示彩票举办的天数。

接下来,对于每个 ii11mm,有如下两行数据组成一个数据块:

第一行包含一个整数 nin_i1ni500001 \le n_i \le 50000),表示第 ii 天参与抽奖的人数。

第二行包含 ai,1,,ai,nia_{i,1}, \ldots, a_{i,n_i}1ai,j500001 \le a_{i,j} \le 50000),表示第 ii 天参与抽奖的人的编号。保证所有 ai,1,,ai,nia_{i,1}, \ldots, a_{i,n_i} 互不相同。

保证所有测试用例中所有 nin_i 的总和不超过 5000050000

输出格式

对于每个测试用例,如果不存在方案,输出一个整数 1-1

否则,输出 mm 个整数 p1,p2,,pmp_1, p_2, \ldots, p_m1pi500001 \le p_i \le 50000),表示从第 11 天到第 mm 天的中奖者编号。如果有多种方案,输出任意一种均可。

说明/提示

在第一个测试用例中,其中一个答案是 [8,2,1][8, 2, 1],因为编号为 88 的参与者只在第 11 天参与,未在第 22 天和第 33 天参与;编号为 22 的参与者只在第 22 天参与,未在第 33 天参与;编号为 11 的参与者只在第 33 天参与。注意这不是唯一的答案,例如 [8,9,4][8, 9, 4] 也是正确答案。

在第二个测试用例中,两个参与者在两天都参与了抽奖,因此第 11 天的任何中奖者在第 22 天也会参与,这不被允许。因此不存在正确答案。

在第三个测试用例中,第 223344 天只有一个参与者,第 11 天只有一个参与者没有在第 2,3,42, 3, 4 天参与——编号为 22 的参与者,因此 [2,1,4,3][2, 1, 4, 3] 是该测试用例唯一正确答案。

由 ChatGPT 4.1 翻译

样例

3
3
4
1 2 4 8
3
2 9 1
2
1 4
2
2
1 2
2
2 1
4
4
1 2 3 4
1
1
1
4
1
3
8 2 1 
-1
2 1 4 3 

在线编程 IDE

建议全屏模式获得最佳体验