这里的!isroot(u)为什么一定要放后面。
!isroot(u)
void splay(int u) { update(u); for (int f = fa[u]; f = fa[u], !isroot(u); rotate(u)) if (!isroot(f)) rotate(get(f) == get(u) ? f : u); }
如果放前面, 就会疯狂WA