rt,为什么
f[find(a[i].x)] = find(a[i].y); cnt--;
要加上条件
if (find(a[i].x) != find(a[i].y))
注:这些都是基础的并查集操作,具体位置在主函数的最后几行,cntcntcnt用于判断两个村庄是否可以通车,若cnt==1cnt==1cnt==1说明可以,否则不行