摘要:
$\quad$这个就是对于所有询问一起二分答案。一般的格式是 solve(值域,操作范围) ,表示在这个操作范围内,所有的操作都是涉及这个值域的(答案在这个值域,加减在这个值域),并且按照顺序排列。那么求解的大概的过程就是,对于当前值域二分一个答案,扫一遍,对于涉及的数值比这个二分的值小的操作就放在 阅读全文
摘要:
$\quad$对于莫队的复杂度计算,我们首先块长,然后分别分析左右端点的移动,然后就会得到一个式子,为了使这个式子最小,适当调整分块块长即可。 普通莫队 $\quad$对于普通莫队,一般的复杂度是 $O(n\sqrt n) $ 。 $\quad$最优的分块方式是对于端点分块,块长为 \(\frac{ 阅读全文
摘要:
总结 偏序问题 1D 动态规划优化 动态问题转为静态问题 $\quad$所有的这些都离不开一个精髓,就是分治处理:先处理左边区间,然后处理左边区间对右边区间的贡献,然后处理右边区间。(后面两项处理根据具体应用调整操作顺序) $\quad$对于偏序问题一般的就是三维偏序,要注意的是一边算贡献,一边作排 阅读全文
摘要:
总结 $\quad$01分数规划的基本题目套路是这么一个式子 \[ \sum\frac{w_ia_i}{w_ib_i},w_i=0/1 \] $\quad$也就是对于每一组问题取或不取,最好希望分数最大/小化 $\quad$一般采用的都是二分的方法,也就是会套一个 \(log\) ,然后对于这个值贪 阅读全文
摘要:
总结 $\quad$模拟退火的基本思路就是,如果状态更优,那么就接受他,如果结果不更优,那么以 \(\frac{-\Delta E}{T},\Delta E\geq0\) 的概率去接受当前值。 $\quad$要注意的是: 接受一个不那么优的值时,不要改变全局答案和答案相关变量,仅仅改变当前相关值。 阅读全文
摘要:
$\quad$以模板题为例,P3690 【模板】动态树(Link Cut Tree),具体讲讲每个操作 #define lc c[x][0] #define rc c[x][1] const int N=3e5+10; int n,m,v[N],f[N],c[N][2],s[N],r[N],st[N 阅读全文
摘要:
SAM 的定义 SAM 是一张有向无环图。结点被称作 状态 ,边被称作状态间的转移 图存在一个源点 \(t_0\) ,称作 初始状态,其它各结点均可从 \(t_0\) 出发到达 每个 转移 都标有一些字母。从一个结点出发的所有转移均不同 存在一个或多个 终止状态 。如果我们从初始状态 \(t_0\) 阅读全文