题目描述
给定 n 个集合 A1⋯n,满足 Ai 里的元素都严格小于 i。
可以通过这些集合构造另外 n 个集合 B1⋯n,其中 Bi={i}∪(∩k∈AiBk),即所有 k∈Ai 的 Bk 的交再并上 {i}。
给出 q 组询问,每次询问需要回答若干个 B 集合的 并集 的大小。
输入格式
第一行一个整数 n 表示集合个数。
接下来 n 行,每行第一个数 ci 表示第 i 个集合的数的个数,接下来是 ci 个小于 i 的数,代表 Ai 中的元素。
接下来一行一个整数 q 表示询问组数。
接下来 q 行,每行第一个数 ki 表示当前询问涉及到的集合数量,接下来 ki 个整数分别表示询问的集合 B 的编号。
输出格式
共 q 行,每行一个整数表示对应若干 B 集合的并的大小。
7
0
1 1
1 1
1 2
2 2 3
0
2 2 6
3
2 2 3
2 3 5
2 4 5
3
3
4
样例解释
根据题意,有 B2={1,2},B3={1,3},B4={1,2,4},B5={1,5},那么三个询问得到的并集分别是 {1,2,3},{1,3,5},{1,2,4,5},大小分别为 3,3,4。
数据规模与约定
对于 100% 的数据,1≤n,q≤2×105,0≤∑ci≤3×105,0≤∑ki≤2×106。