「模板」替罪羊树
目录 变量/函数の定义 代码 变量/函数の定义 变量/函数名 定义/作用 tax[] 将树拍扁时用的临时数组 tail 与 tax[] 配套使用,类似于栈顶指针 son[x][] 点 \(x\) 在树上的左/右儿子 exist[x] 点 \(x\) 存在与否, \(1\) 为存在 val[x] 点 \(x\) 的值 siz[x] 点 \(x\) 的子树一共有多少节点 fact[x] 点 \(x\) 的子树实际还存在多少节点 rt 树根 memory_pool[] 内存池 origami 记录内存池的元素个数,也用作栈顶指针 真不是折纸大师 void buildPool() 建立内存池 int Newnode() 获取一个新节点编号 void Release(x) 释放节点 \(x\) ,即重新放回内存池 void Clear(x) 将点 \(x\) 清空 void Leaf(x) 建立点 \(x\) 为叶子的信息,双儿子为 \(0\) 且子树大小为 \(1\) void Pushup(x) 顾名思义,上传操作 bool Balance(x) 返回树 \(x\) 平衡与否, \(1\) 为平衡 void Insert(x,v) 在点 \(x\) 的子树里面插入值 \(v\) void Delete(x,rnk) 在点 \(x\) 的子树里面删除排名为 \(rnk\) 的值 int