路径压缩呢
by liujiageng @ 2020-08-04 09:08:00
```cpp
void mrg(int x,int y){
int xp=fnd(x);
a[xp].pre=y;
}
```
这一步导致MLE
```cpp
void mrg(int x, int y) {
int xp = fnd(x);
a[xp].pre = fnd(y);
}
```
------------
```cpp
int fnd(int p){
return a[p].pre==p?p:fnd(a[p].pre);
}
```
这一步会导致TLE
```cpp
int fnd(int p) {
return a[p].pre == p ? p : a[p].pre = fnd(a[p].pre);
}
```
------------
初始化
```cpp
for(int i=0;i<10000;i++) a[i].pre=i;
```
→
```cpp
for (int i = 1; i <= 10000; i++) a[i].pre = i;
```
by Meowco @ 2020-08-04 09:32:55
@[RBpencil](/user/246230) 谢谢,已经过了
by Boar @ 2020-08-04 10:39:28