void splay(int p,int goal) { while(tr[p].fa!=goal) { int fa=tr[p].fa,grand=tr[fa].fa; if(grand!=goal) { if((tr[fa].son[1]==p)==(tr[grand].son[1]==fa)) rotate(fa); else rotate(p); } else rotate(p); } if(!goal) rt=p; return ; }
还是说写假了……