欢迎来玩有第三场的LABCEG 传送门 G 并查集。看到本题第一想法就是并查集,由于题目中合并两个集合的条件是两集合之间的点有边相连,那么我们考虑怎样的点,对增加集合元素有贡献。 首先已经被扫过的点显然对答案没有贡献,我们发现每次扩展出新的点可能对答案会产生贡献,我们不妨称之为可扩展点或者说是边界点。对于一个集合我们可以开一个队列保存有哪些边界点,每一次向外扩展,现当于把队列内的边界点取出往外扩展一层,并且加入的集合。我们不难发现这个过程有点类似于bfs,其实向外扩展一层现当于向外执行一层bfs,因此我们每次往外扩展时采用这种类bfs的策略来找到需要合并哪些集合。但是这题卡空间,我们无法开个,...