问题 M: 开关

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:267 解决:139

题目描述

我们有“开”和“关”状态的n个开关和m个灯泡。

开关编号为1到n 。

灯泡编号为1到m。

灯泡i连接了ki个开关:开关s[i][1],s[i][2],...,和s[i][ki]。

对于灯泡i连接的这些开关中如果打开的开关数量%2等于p[i],灯泡i会被点亮。

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

1 <= n , m <= 10

1 <= ki <= n

p[i] = 0 / 1



输入

n m
k1 s[i][1],s[i][2],...,和s[i][ki]
.........
km s[m][1],s[m][2],...,和s[m][km]
p[1] , p[2] , ..... p[m].


输出

打印点亮所有灯泡的开关的“开”和“关”状态的组合数量

样例输入 复制

2 2
2 1 2
1 2
0 1

样例输出 复制

1

提示

有四种可能的状态组合(开关1、开关2):(开、开)、(开、关)、(关、开)和(关、关)。其中,只有(开,开)可以打开所有的灯泡,所以我们应该打印1