萌新第一次写LCT求调
查看原帖
萌新第一次写LCT求调
1000298
Vsinger_洛天依楼主2024/3/14 18:02

众所周知,这道题在link操作内需要把y的深度最高的节点和x的深度最低的节点连起来

而且这道题的原树形状会保持在一个链的形状

这是我写的代码

if(ch=='M'){
  y=read();
  if(Find(x)==Find(y)) continue; 
  // x=Find(x);
  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输出的结果是

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

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

2024/3/14 18:02
加载中...