原理 以随机数维护平衡,使树高期望为logn级别 不依靠旋转,只有两个核心操作merge(合并)和split(拆分) 因此可持久化 先介绍变量 ; int n; struct Node { int val,key,siz; //权值,随机权值,子树大小 ]; //左右儿子(0左1右) void res() { //清空该节点(用于删除) son[]=son[]=siz=val=key=; } } tree[N]; int ins; int mem[N],inm; //内存回收池 int root…