众所周知,这道题在link操作内需要把y的深度最高的节点和x的深度最低的节点连起来
而且这道题的原树形状会保持在一个链的形状
这是我写的代码
if(ch=='M'){
y=read();
if(Find(x)==Find(y)) continue;
access(x);splay(x);
while(son[x][0]){x=son[x][0];}
splay(x);
access(y);splay(y);
while(son[y][1]){y=son[y][1];}
splay(y);
cerr<<"Link "<<x<<" "<<y<<endl;
link(x,y);
}
而cerr输出的结果是

如果按照这样去连接我们形成的会是一颗树而非链

很明显,这样是不对的,所以我的代码错在了哪里