#CTC001. 子集个数

子集个数

题目描述

现给出 NN1N1031\leq N \leq 10^3)个数集,第 ii 个数集中有 MiM_i0Mi1050\leq M_i \leq 10^5)个非负数(不保证每个数互异 , 但保证每个数的值不超过 10510^5),求每个数集中所有非空真子集的个数。

ps:非空真子集即指在某集合 AA 中元素个数大于 00 小于 AA 的元素个数,且所有元素在集合 AA 中都可以找到。

pps:为了保证集合互异性,同一集合元素不可重复; 为了保证集合的无序性,集合中只有元素的顺序改变时,我们认为集合是不变的,如 {1,0}\{{1,0\}}{0,1}\{{0,1\}} 看作相同的集合。

举个栗子:对于集合 {0,1,2}\{{0,1,2\}} ,其非空真子集为 {0}\{{0\}}{1}\{{1\}}{2}\{{2\}}{0,1}\{{0,1\}}{0,2}\{{0,2\}}{1,2}\{{1,2\}},共 66 个。

输入

第一行一个整数 NN。 第 22 行到 2N+22N+2 行分别先输入一个 MiM_i,再输入 MM 个数,表示集合的元素。

输出

NN 行, 表示每一个集合中非空真子集的个数。 ps:由于结果可能很大,输出时对 109+710^9+7 取余。

样例

2
4 
0 9 5 4
5
10 23 6 6 123
14
14

时空限制