摘要:个人码风:大括号换行,4格缩进,轻微压行 注:代码中可能缺少以下缺省源: 逆元 线性筛素数 拉格朗日插值 原根 朱刘算法(最小树形图) 阅读全文
posted @ 2019-03-07 00:09 OIerC 阅读(103) 评论(0) 推荐(0) 编辑
摘要:积性函数 若定义域为全体正整数的函数$f(x)\(满足\)\forall gcd(n,m)=1,f(nm)=f(n)f(m)$,则称函数$f(x)$为积性函数。 常见的积性函数有$\epsilon(n),\ \varphi(n),\ \mu(n),\ \sigma_(n),\ id_k(n)$等。 阅读全文
posted @ 2020-07-16 23:34 OIerC 阅读(42) 评论(1) 推荐(1) 编辑
摘要:斯坦纳树问题是组合优化问题,与最小生成树相似,是最短网络的一种。最小生成树是在给定的点集和边中寻求最短网络使所有点连通。而最小斯坦纳树允许在给定点外增加额外的点,使生成的最短网络开销最小。 上述文字来自百度百科,更$OI$化的表达参见这道模板题 现在我们来考虑解决这个问题。 看到$K$很小,考虑状压 阅读全文
posted @ 2020-07-03 17:21 OIerC 阅读(30) 评论(0) 推荐(0) 编辑
摘要:斜率优化是一种用数据结构维护$dp$的某种单调性性质从而达到优化$dp$的效果。 抽象的说,斜率优化可通过维护一个下(上)凸壳优化形如$f_i = min_^{ f_j + g_{i,j}}$($max$同理)的转移方程。 本文只有简单推导,更充分的理解需要数形结合,请移步\(OI\ Wiki\)或 阅读全文
posted @ 2020-07-02 11:31 OIerC 阅读(24) 评论(0) 推荐(0) 编辑
摘要:$FFT$(快速傅里叶变换) 求的是卷积,也就是 $$ C_k=\sum_{i+j=k}A_iB_j $$ 那么 $FWT$(快速沃尔什变换) 求的就是子集卷积,也就是 $$ C_{k}=\sum_{i \oplus j=k} A_{i} B_{j} $$ $\oplus$指按位运算$or,and, 阅读全文
posted @ 2019-06-16 11:54 OIerC 阅读(399) 评论(1) 推荐(0) 编辑
摘要:"题目传送门" Description 交互题 有$n$个人$(n=a+b\leq 10^3)$,编号$0$至$n 1$,其中$a$个人诚实地回答问题,$b$个人会任意选择诚实或不诚实地回答问题(以某种策略)。 询问次数$2n$,询问格式为$?\ x\ y$,指问第$x$个人第$y$个人的身份,确定 阅读全文
posted @ 2019-06-16 10:21 OIerC 阅读(141) 评论(0) 推荐(1) 编辑
摘要:第一类$Stirling$数 $\begin{bmatrix} n \\ m \\ \end{bmatrix}$表示$n$个元素组成$m$个圆排列的方案数。 何为圆排列?即通过排列在一个环上,两两不能通过旋转相互得到的排列的个数。 $$ \begin{bmatrix} n \\ m \\ \end{ 阅读全文
posted @ 2019-05-04 23:28 OIerC 阅读(97) 评论(0) 推荐(0) 编辑
摘要:概要 $Catalan$数的递推式: $$ C_{n+1}=\sum_{i=0}^{n}C_i\cdot C_{n i} \tag{1} $$ $$ C_n=C_{n 1}\cdot\frac{4n 2}{n+1} \tag{2} $$ $Catalan$数的递推解(通项式): $$ C_n=\fr 阅读全文
posted @ 2019-04-30 23:36 OIerC 阅读(106) 评论(0) 推荐(0) 编辑
摘要:李超线段树是什么?在平面直角坐标系中,它支持插入一条线段(直线),询问$x=x_0$时与它相交的线段中$y$的最大(小)值。 它是如何维护的?抽象的说,就是 标记永久化线段树维护区间内从$y=\infty$往下看没有被覆盖的长度最大的直线 标记永久化 是什么?就是不用$pushdown$啦,不懂可以 阅读全文
posted @ 2019-04-29 21:43 OIerC 阅读(120) 评论(0) 推荐(0) 编辑
摘要:标记永久化是线段树的一个技巧,常用于无法(或难以)进行$pushdown$的较复杂的数据结构如主席树,树套树等。 如何做?对每个节点维护$sum$和$add$。 考虑修改,当询问与当前区间重合时,更新$add+=val$,对所有经过的区间$sum+=val\cdot (r l+1)$。 考虑询问,累 阅读全文
posted @ 2019-04-29 21:18 OIerC 阅读(132) 评论(0) 推荐(0) 编辑
摘要:左偏树能干什么?它支持$O(logn)$完成插入,删除,查询最值,合并。 看到前三个我们想到堆(优先队列),所以左偏树是可并堆的一种。 说到可并堆,主要有左偏树,配对堆,二项堆,斐波那契堆等几种。而$OI$界主要使用前两种,主要是好写的缘故。 配对堆似乎是一种比左偏树时间复杂度及常数更小且代码复杂度 阅读全文
posted @ 2019-04-28 23:29 OIerC 阅读(136) 评论(0) 推荐(0) 编辑