随笔分类 -  知识点

摘要:## 二元线性规划问题转网络流:对于 n 个变量 xi,限制形如 xixjbxibxib,求 cixi 的最小值,可以转化成上下界最大费用流求解。 首先重温线性规划问题的一般形式(之一): $$ \begin{al 阅读全文
posted @ 2023-05-23 22:48 CharlieVinnie 阅读(225) 评论(0) 推荐(1) 编辑
摘要:线性基求交:设 A,B 为两个线性基,VA,VB 分别为其生成空间,则 VC=VAVB 是一个线性空间,称 AB 两个线性基的交为 C。 首先证明 VC 是一个线性空间。其实很显然,对于任意 \(x,y\in V_C 阅读全文
posted @ 2023-02-02 08:48 CharlieVinnie 阅读(578) 评论(3) 推荐(3) 编辑
摘要:支配树:在 O(nlogn) 时间内求出一张有向图中能切断一个点到起点的所有路径的点 具体地,先定义一个起点 S(要求它能到达所有点),对于图中一个点 u,存在一些点 v,使得删去某个 vS 无法走到 u,这些点 v 所组成的 阅读全文
posted @ 2022-10-07 22:46 CharlieVinnie 阅读(496) 评论(3) 推荐(1) 编辑
摘要:反悔贪心:在确保能反悔以贴合全局最优解的前提下,选择局部最优解 (理论上来说,这种算法要建出费用流模型才能保证正确性,但是。。) 不好说,上例题: P7219 [JOISC2020] 星座 3 首先发现每个 y 坐标小的点会对其上方的一个矩形形成限制,就是不能同时存在点。我们对每个点记录它被限制 阅读全文
posted @ 2022-07-16 10:41 CharlieVinnie 阅读(76) 评论(6) 推荐(1) 编辑
摘要:拉格朗日乘子法:计算多变量函数最值 设要优化的函数为 f(x1,x2,,xn),有限制 g(x1,x2,,xn)=0。 凭空引入拉格朗日乘子 λ ,令 $h(x_1,x_2,\dots,x_n)=f(x_1,x_2,\dots,x_n)+\la 阅读全文
posted @ 2022-07-11 18:10 CharlieVinnie 阅读(49) 评论(0) 推荐(0) 编辑
摘要:后缀自动机:可以接受一个字符串 s 的所有子串的自动机 后缀树:将一个字符串的所有后缀编成一个**压缩**后的 Trie 后缀自动机性质: 1. 由不超过 2n1 个点构成(所以数组要开2倍) 2. 每个节点是个 endpos 集合,表示其中所有字符串在 s 中结束的位置的集合 3. 阅读全文
posted @ 2022-03-09 11:45 CharlieVinnie 阅读(115) 评论(0) 推荐(0) 编辑
摘要:线段树历史区间最值:支持区间加法,询问区间内历史上的最大值,清空历史 不要草率!!!比看上去的要难无数倍!!! 注意事项: 1. 一定要记录两个标记 tagmxtag,分别为“区间加标记”和“区间最大加标记”(后者也可以理解为这个区间内所有来过的加标记的前缀最大值) 2. 正确的 pu 阅读全文
posted @ 2022-02-02 19:43 CharlieVinnie 阅读(133) 评论(0) 推荐(0) 编辑
摘要:分治FFT:在 O(nlog2n) 的时间内求出类似于 fi=j=0i1g(ij)f(j) 之类的递推式 思想:同 CDQ 分治的思想,先分成左半边和右半边,先处理左半边,然后计算左半边对右半边的影响,最后处理右半边。 注意事项: 1. 不是所 阅读全文
posted @ 2022-01-30 22:06 CharlieVinnie 阅读(66) 评论(0) 推荐(0) 编辑
摘要:这里的小Min_25筛,可以筛出 1011 以内所有质数的完全积性函数之和 注意事项: 1. cmd 的题解里面下标写得不清楚,应该是 S(pk1,k1) 而不是 S(pk1,k1),调了1hrswwwwww 2. 不需要预处理质数,通过 $res1[i]==res 阅读全文
posted @ 2022-01-28 22:09 CharlieVinnie 阅读(45) 评论(0) 推荐(0) 编辑
摘要:势函数:对 i=[1,n] 自定义 f(i),使得每一步势能变化期望 +1/-1,通过求初态与终态的势能差求期望步数 注意:这里的 f(i) 是可以自拟的,即只要满足每一步势能变化期望为 +1/-1 即可! 所以说,这本质上是通过人类智慧定义这么一个函数! 常见形式:$\sum\limi 阅读全文
posted @ 2022-01-23 08:30 CharlieVinnie 阅读(305) 评论(1) 推荐(0) 编辑
摘要:KD-Tree,是用来维护一个空间(其实一般是平面)中的信息的数据结构。 以下就 2D-Tree 进行讨论。(盲猜并不会考 3D 及以上) 思想:将一个大矩形以一种方式划分成若干个小矩形,然后询问时只查询与询问矩形有交的小矩形。 每次轮流砍开 x 坐标和 y 坐标,分成左右点的个数相等的两半。 注意 阅读全文
posted @ 2022-01-18 15:58 CharlieVinnie 阅读(42) 评论(0) 推荐(0) 编辑
摘要:一个矩阵的特征多项式,为 det(AIz),这是一个关于 zn 次多项式。 求的时候的注意点: 1. 消元形成上海森堡矩阵,即对于 i=2,3,,n,ji1,a[i][j]=0。 形象一点: X X X X X X X X X X 0 X X X X 阅读全文
posted @ 2022-01-15 17:44 CharlieVinnie 阅读(158) 评论(0) 推荐(0) 编辑
摘要:不用说了,直接上怎么 die( 千万不要和 Treap 一样写左旋 zig 和右旋 zag,莫名死亡。Splay 只支持一个 rotate 上旋一个节点即可。 splay() 之前记得弄一个栈存储 u 到根的 splay 路径,倒序把 flip 标记全部推下来。 access() 中 u 在往上爬的 阅读全文
posted @ 2021-12-23 20:59 CharlieVinnie 阅读(26) 评论(0) 推荐(1) 编辑
摘要:面对“n 个数中选 k 个数”之类的问题,脑子里第一个想到指数型生成函数。 重要技巧:进行一个游戏,进行的期望次数=Σ(进行 i 次还没有停止的概率)。 证明:阿贝尔变换即可。 于是就可以设 P(i) 为进行 i 次的概率,令 $F(z)=\sum\limits_{i \geq 0} 阅读全文
posted @ 2021-12-19 21:53 CharlieVinnie 阅读(67) 评论(0) 推荐(0) 编辑
摘要:杜教筛:在 O(n2/3) 的时间内求出积性函数 f(x) 的前缀和。 注意事项: 1. 线性预处理 n2/3 内的所有 f 的值再开始筛。 2. 一定要用一个数组(而不是 map)来记忆化,对于所有 d 记忆 n/d 处的 f 前缀和。 3. 如果有多次询问 阅读全文
posted @ 2021-12-15 23:12 CharlieVinnie 阅读(28) 评论(0) 推荐(0) 编辑
摘要:FFT Fast Foulier Transformation 以 O(nlogn) 的速度计算 k=1,2,,n,c[k]=i=0ka[i]b[ki] **command_block 大神's blog** 记住,要 阅读全文
posted @ 2021-12-07 20:34 CharlieVinnie 阅读(39) 评论(0) 推荐(0) 编辑
摘要:所谓长链剖分,就是给每个节点标记一个深度最深的长儿子。 长链剖分的优势:对于可以 O(1) 从一个儿子继承所有所需信息的 dp,用长链剖分,更新时直接 O(1) 继承长儿子的信息,其余儿子的信息暴力继承即可。 时间复杂度 $O(\sum\limits_{u} \sum\limits_{v \ 阅读全文
posted @ 2021-11-30 20:50 CharlieVinnie 阅读(41) 评论(0) 推荐(0) 编辑
摘要:特别适用于背包类问题,尤其是树上背包。 若出现 $f_{u,i}=\sum\limits_{v_1,v_2, \dots,v_{s} \in son(u)} \sum\limits_{j_1+j_2+ \dots +j_{s}=i} {f_{v_1,j_1}f_{v_2,j_2}\dots f_{v 阅读全文
posted @ 2021-11-30 20:31 CharlieVinnie 阅读(41) 评论(0) 推荐(1) 编辑
摘要:李超树是一种可以动态插入直线并支持查询一个x坐标处最大值的数据结构。 实现时,注意不要判断两直线的交点与 mid 的关系,而是要判断区间两端点处两直线 y 坐标的关系。否则当交点为 mid 时极易出错。 阅读全文
posted @ 2021-11-18 21:26 CharlieVinnie 阅读(76) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示
🚀
回顶
收起