题目链接 从一个点只能往后跳,即后继状态只有一个,那么拿nxt[x]做fa[x]啊!这样就成了一棵树,从每个点开始的答案是它到所在树的根节点的距离. nxt[]的更改即动态修改树边,用LCT即可. 这样查询需要的就是 Access(x),Splay(x);return sz[x];(sz[lson]+1一样...) 修改就将Cut(x,fa[x]),将x旋到根后砍掉左子树就行了. 因为不需要去查一条x->y的链,且保证是一棵树,所以Split,Make_root,PushDown...就可以省了…