AT_past202306_g N-SAT

题目描述

判断是否存在一种方法,为每个 $N$ 个变量 $x_1,x_2,\ldots,x_N$ 分别赋值 $0$ 或 $1$,使得: - 对所有 $i=1,2,\ldots,M$,都满足: - 对于每一个 $i$,存在一个整数 $j$,$1 \leq j \leq k_i$,使得 $x_{a_{i,j}}=b_{i,j}$。

输入格式

输入按如下格式从标准输入给出: > $N \ M$ > $k_1$ > $a_{1,1}\ b_{1,1}$ > $\vdots$ > $a_{1,k_1}\ b_{1,k_1}$ > $\vdots$ > $k_M$ > $a_{M,1}\ b_{M,1}$ > $\vdots$ > $a_{M,k_M}\ b_{M,k_M}$

输出格式

如果存在一种赋值方案,输出 `Yes`,否则输出 `No`。

说明/提示

### 样例解释 1 例如,将 $x_1=1, x_2=0, x_3=0, x_4=0, x_5=0$ 时,可以满足题目要求。 ### 数据范围 - $1 \leq N \leq 15$ - $1 \leq M \leq 100$ - $1 \leq k_i \leq N$ - $1 \leq a_{i,1} < a_{i,2} < \ldots < a_{i,k_i} \leq N$ - $b_{i,j} \in \{0,1\}$ - 输入中的所有数均为整数。 由 ChatGPT 5 翻译