CF771A Bear and Friendship Condition
题目描述
小熊 Limak 正在研究一个社交网络。这个网络的主要功能是,两个成员可以成为朋友(这样他们就可以互相交流、分享有趣的图片)。
网络中共有 $n$ 个成员,编号为 $1$ 到 $n$。有 $m$ 对成员是朋友关系。当然,一个成员不能和自己成为朋友。
我们用 A-B 表示编号为 A 和 B 的两个成员是朋友。Limak 认为一个社交网络是“合理的”,当且仅当满足以下条件:对于任意三个互不相同的成员 $(X, Y, Z)$,如果 $X-Y$ 且 $Y-Z$,那么 $X-Z$ 也必须成立。
例如:如果 Alan 和 Bob 是朋友,Bob 和 Ciri 也是朋友,那么 Alan 和 Ciri 也必须是朋友。
你能帮助 Limak 检查这个网络是否合理吗?如果合理,输出 “YES”;否则,输出 “NO”(均不包含引号)。
输入格式
输入的第一行包含两个整数 $n$ 和 $m$($3 \leq n \leq 150000$),分别表示成员的数量和朋友关系对数。
接下来的 $m$ 行,每行包含两个不同的整数 $a_i$ 和 $b_i$($1 \leq a_i, b_i \leq n, a_i \neq b_i$),表示成员 $a_i$ 和 $b_i$ 是朋友。输入中同一对成员不会重复出现。
输出格式
如果该网络是合理的,在一行中输出 “YES”;否则,输出 “NO”。
说明/提示
下图展示了第一个样例(左图)和第二个样例(右图)的情况。每条边代表一对朋友关系。在第二个样例中,答案是 “NO”,因为成员 $(2,3)$ 是朋友,$(3,4)$ 也是朋友,但 $(2,4)$ 不是朋友。

由 ChatGPT 5 翻译