注意到给出的关系是有向的,也就是说不可以直接用并查集将两个元素合并到一个集合内 举个例子,假设 n = 2 ,那么 1 有 2 的电话号码是合法的, 2 有 1 的电话号码是不合法的 解释一下就是,如果老师有我的电话号码,而我没有老师的电话号码,那么这时我是不可能给老师打电话的 因此不能直接合并集合 考虑拆点的做法 我们把一个元素拆成两个,分别代表入点和出点 如果 u 有 v 的电话号码, 我们就把 u 的出点和 v 的入点合并至一个集合(u 打电话给 v) 同时,在初始化时,我们也要把 u 的出点和入点合并(可以理解成 u 转接电话的过程) 最后查询 1 的出点与 n 的入点是否在同一集合 ...