AT_codefestival_2016_final_c Interpretation
题目描述
用 $1$ 到 $m$ 这 $m$ 个正整数为 $m$ 种语言编号。现在有 $n$ 个人,他们的编号依次为 $1,2,...,n$。第 $i$ 个人会说这 $m$ 种语言中的 $k_i$ 种,它们的编号分别为 $l_{i,1},l_{i,2},...,l_{i,k_i}$。
现在,如果说编号 $a$ 和编号 $b$ 的两个人是“可以交流的”,当且仅当两人存在以下两种模式中的至少一种:
- 当 $a$ 和 $b$ 可以直接交流时,满足:存在至少一种语言,$a$ 和 $b$ 都会。
- 当 $a$ 和 $b$ 可以间接交流时,满足:存在一个人 $x$,他(她)可以分别与 $a$ 和 $b$ 直接交流。
请问:每个人是否都能和其他人中的任意一个直接或间接地交流?
输入格式
输入共 $(n+1)$ 行。第一行是一行两个以单个空格隔开的正整数 $n$ 和 $m$,接下来的 $n$ 行中,第 $i$ 行会输入 $(k_i+1)$ 个数,依次为 $k_i$ 和所有的 $l_{i,j}(1 \le j \le k_i)$,相邻的两个数之间以单个空格隔开。
输出格式
输出一行一个字符串。如果每个人都可以和其他人中的任意一个交流请输出`YES`;否则,请输出`NO`。
说明/提示
#### 输入输出样例 #1 说明
(为了简便,每个人直接用其编号代替,样例 $ \#2 $ 解释同)
任意两个人都可以交流,如下:
- $1$ 和 $2$ 都会说语言 $2$;
- $2$ 和 $3$ 都会说语言 $4$;
- $1$ 和 $3$ 可以通过 $2$ 间接交流;
- $3$ 和 $4$ 都会说语言 $6$;
- $2$ 和 $4$ 可以通过 $3$ 间接交流;
- $1$ 和 $4$ 可以通过 $2$ 间接交流。(这里请注意,$1$ 和 $4$ 是通过 $1-2-3-4$ 的链条来间接交流的)
#### 输入输出样例 #2 说明
例如,$1$ 和 $3$ 不能交流。
#### 数据规模与约定
所有输入数据保证:
- $2 \le n \le 10^5$,$1 \le m \le 10^5$,$1 \le k_i \le m$,且所有 $k_i$ 之和 $\le 10^5$;
- $1 \le l_{i,j} \le m$,且对于同一个 $i$ 来说,$l_{i,j}$ 互不相同。