并查集
我们首先做并查集的普通操作:把自己当作自己的父亲。
其次我们枚举输入的点,如果不是同一个父亲就合并,
并记录当前的黑洞的宽度。
那怎么实现?
xx=find(b[i].x);
yy=find(b[i].y);
if(xx!=yy)
{
f[xx]=yy;
ans=b[i].z;
}
当然,我们还需要一个 w h i l e while while循环,
用来求出每一个奶牛是否都到达了自己的位置,怎么求?
我们可以设一个 j s js js变量,遇到到达了自己的位置的就++,
当 j s = n − 1 js=n-1