#AT1115. 开关

开关

题目描述

NN个开关,每个开关有“开"和“关”两种状态,还有MM个电灯。开关编号从11NN,灯泡编号从11MM

ii个灯泡与kik_i个开关相关联,分别为开关si1,si2...siks_{i1},s_{i2}...s_{ik}

当这些开关中“开“状态的数量与pip_i模2同余时,该灯泡会亮。

有多少种开关的“开”和“关“状态组合可以使所有灯泡都亮起来?

输入

第一行两个整数N,MN,M

接下来一共MM

ii行为和第ii个灯泡相关联的开关数量kik_i,和kik_i个开关的编号

最后一行一共p1,p2...pMp_1,p_2...p_M

输出

输出使所有灯泡亮起来的开关的“开”和“关”状态组合的数量。

2 2
2 1 2
1 2
0 1
1

样例解释

灯泡1在以下开关的“开”状态数为偶数时会亮起来:开关1和 2。

灯泡2在以下开关的“开”状态数为奇数时会亮起来:开关 2。

总共有四种开关状态组合:(开,开),(开,关),(关,开)和(关,关)。其中只有(开,开)可以使所有灯泡都亮起来,所以应该输出1。

2 3
2 1 2
1 1
1 2
0 0 1
0

样例解释

灯泡1在以下开关的“开”状态数为偶数时会亮起来:开关 1和2。

灯泡2在以下开关的“开”状态数为偶数时会亮起来:开关 1。

灯泡3在以下开关的“开”状态数为奇数时会亮起来:开关 2。

为了让灯泡2亮起来,开关1必须处于“关”状态,而为了让灯泡 3亮起来,开关2必须处于“开”状态。但是这样灯泡1将无法亮起来。因此,没有任何一种开关状态组合可以使所有灯泡都亮起来,所以应该输出0。

5 2
3 1 2 5
2 2 3
1 0
8

提示

1N,M101 \leq N,M \leq 10

1kiN1 \leq k_i \leq N

1sijN1 \leq s_{ij} \leq N

siasibs_{ia} \neq s_{ib}

pi01p_i 是0或1