随笔分类 - 模板
摘要:怎么说呢。。。这次的代码码风有点。。。 从这篇博客开始,我终于会用LATEX了!撒花 注:以下涉及多项式的n均表示多项式的次数 FFT用途 很简单,多项式相乘。 FFT原理 如果暴力乘,复杂度是$O(n^{2})$的,显然不行 所以考虑点值法。点值表示下的多项式相乘是$O(n)$的。这就是DFT(离
阅读全文
摘要:介绍、用途 LCT是树链剖分中的一种,又叫实链剖分、动态树,常用于维护动态的树、森林。 维护方式 LCT并不直接维护原树,而是用一堆splay作为辅助树来维护。原树中的一条实链上的点在一棵splay中,虚边体现为辅助上的连接两棵splay的虚边,只认爸爸不认儿子。 变量介绍 1 int n,m; 2
阅读全文
摘要:原理 替罪羊树不依靠旋转,而是依靠重构不平衡的子树使整棵树达到平衡状态。 变量介绍 1 int n; 2 struct Node { 3 int val,num; //节点的值,数量 4 int siz,hid; //以该节点为根的子树中未被删的节点数和已被删的节点数 5 int son[2],fa
阅读全文
摘要:原理 以随机数维护平衡,使树高期望为logn级别 不依靠旋转,只有两个核心操作merge(合并)和split(拆分) 因此可持久化 先介绍变量 1 const int N=100005; 2 int n; 3 struct Node { 4 int val,key,siz; //权值,随机权值,子树
阅读全文
摘要:OI界中有两大玄学算法,一为网络流,一为模拟退火——沃·兹基硕德 算法思想来源 在热力学上,退火现象指物体逐渐降温的物理现象,温度愈低,物体的能量状态会低;够低后,液体开始冷凝与结晶,在结晶状态时,系统的能量状态最低。大自然在缓慢降温(亦即,退火)时,可“找到”最低能量状态:结晶态。但是,如果过程过
阅读全文
摘要:先介绍变量定义 1 int n; 2 struct Node { //Splay节点定义 3 int fa,son[2],val,num,siz; //fa:它爸爸;son它儿子,左0右1;val:这个节点的值 4 //num:这个值的数量;siz:以它为根的子树的大小 5 void res() {
阅读全文

浙公网安备 33010602011771号