摘要: (本文不适合初学者) SAM 个人认为 SAM yyds 希望有一天 SAM 能统治字符串界 前置概念 \(\operatorname{endpos}\) 集合表示一个子串在原串中出现的位置集合 所有的子串通过 \(\operatorname{endpos}\) 分成一个个等价类 构造 每个节点代表 阅读全文
posted @ 2022-06-04 23:24 kzos 阅读(79) 评论(0) 推荐(0)
摘要: 写在前面 大概就是看了一些题解总结了一下得出的东西 肯定有很多错误,欢迎指出 目前学习的不多,希望轻喷 问题引入 UOJ #310. 【UNR #2】黎明前的巧克力 对于一个大小为 \(n\) 的异或为 \(0\) 的集合,有 \(2^n\) 种选择的方案使得选出两个集合的异或和为 \(0\) 对于 阅读全文
posted @ 2022-06-04 11:41 kzos 阅读(54) 评论(0) 推荐(0)
摘要: LG P8251 [NOI Online 2022 提高组] 丹钓战 对于每个括号预处理出向左的 \(pre\) ,拿主席树来查询区间内 \(pre<l\) 的个数即可 P8252 [NOI Online 2022 提高组] 讨论 先考虑包含一个题目的人的集合 S ,在这个集合中是否存在两个不互相包 阅读全文
posted @ 2022-06-04 11:40 kzos 阅读(57) 评论(0) 推荐(0)
摘要: 秃子酋长 一看题面,感觉就是扫描线或者莫队 扫描线似乎是不太可能,那么考虑莫队 对于端点的移动,实质上就是要快速找前驱后继 那么显然的莫队 + set 可以做到 \(n\sqrt{n\log n}\) 之前在 lxl 的 ppt 中其实见过这种 \(O(n\sqrt n)\) 找前驱后继的问题,通过 阅读全文
posted @ 2022-06-04 11:37 kzos 阅读(53) 评论(0) 推荐(0)
摘要: Day1 轻重边 这个题很明显就有树链剖分的感觉,但是这个路径比较难搞 可以发现每一个重边一定是在一次操作 1 中的路径上的一条边,并且两个端点,没有被其他的操作 1 覆盖过 那么我们为每一个端点赋一个时间值 那么问题就转换成了树上的一条路径有多少对相邻且值相等的点对 这个明显就可以合并信息了,那么 阅读全文
posted @ 2022-06-04 11:35 kzos 阅读(76) 评论(0) 推荐(0)
摘要: Day1 美食节 这个题一看就感觉是个矩乘,因为数据范围这么大还和走路有关 为了保证一次只能走一格的规则,我们需要先处理这个边权 这个边权 \(w\leq 5\) 太小了,考虑直接拆了 最显著的拆法是将边拆成 \(w\) 段,前 \(w-1\) 段的边权为 0 ,第 \(w\) 段的边权为 \(c_ 阅读全文
posted @ 2022-06-04 11:34 kzos 阅读(43) 评论(0) 推荐(0)
摘要: Day1 归程 算是 Kruskal 重构树的裸题,感觉就是在卡科技 知道了 Kruskal 重构树后就没什么难度了 先建好重构树,那么每次询问其实就是在树上的某个点跳到深度最浅且海拔超过 p 的点所在子树中到 1 节点的最短路的最短长度 那么预处理出每个点到 1 的最短路,树上每个点子树中的最短距 阅读全文
posted @ 2022-06-04 11:33 kzos 阅读(72) 评论(0) 推荐(0)
摘要: Day1 回家路线 这个题目首先显然可以建图,然后跑 DAG 上的最短路,但是边最大为 \(n^2\) ,但是实际上 CCF 造的数据好像很弱,所以这个方法也许能过 但是建图后就和正解无缘了,建图是以位置为标准去解这道题,然而你会发现没办法优化了 事实上第一眼看这个式子,很明显是个斜率优化,那么考虑 阅读全文
posted @ 2022-06-04 11:33 kzos 阅读(42) 评论(0) 推荐(0)
摘要: 游戏 选 \(a\) 就必须选 \(b\) 这种逻辑语言,事实上就已经很有 2-SAT 的特征了 这个 \(d\leq 8\) ,那么考虑枚举每个 \(x\) 的场地类型 假设现在确定了所有的场地类型,对于场地 \(A\) ,要么选 \(b\) ,要么选 \(c\) ,对于场地 \(B,C\) 同理 阅读全文
posted @ 2022-06-04 11:32 kzos 阅读(45) 评论(0) 推荐(0)
摘要: 雨林跳跃 设 \(X=\max([B,C-1]),Y=\max(C,D)\) 如果 \(X>Y\) 那么一定有解,否则一定有解 可以发现越跳越高,并且 跳跃一段路程时一定满足自己已经比这一段的所有树都高 ,才能跳过去 所以最后一步跳跃一定是从一个高度为 \(X\leq T<Y\) 树跳到右边的区间中 阅读全文
posted @ 2022-06-04 11:31 kzos 阅读(81) 评论(0) 推荐(0)
摘要: 寿司晚宴 这个题目和素数的数量关系很大 对于 30 分,一个想法就是直接状压下质数,\(dp[S_1][S_2]\) 表示小 G 选了 \(S_1\) ,小 w 选了 \(S_2\) 的方案数 枚举每个寿司选或不选,谁选,这个就很好转移,但是 100 分的质数就太大了,绝对是压不下来的 讲实话当时我 阅读全文
posted @ 2022-06-04 11:31 kzos 阅读(34) 评论(0) 推荐(0)
摘要: 欧拉通路: 通过图中每条边且只通过一次,并且经过每一顶点的通路 欧拉回路: 通过图中每条边且只通过一次,并且经过每一顶点的回路 有向图的基图 忽略有向图所有边的方向,得到的无向图称为该有向图的基图 具有欧拉回路的无向图 G 被称为欧拉图 定理 无向图存在欧拉通路的充要条件是:图联通,并且只有两个奇度 阅读全文
posted @ 2022-06-04 11:29 kzos 阅读(231) 评论(0) 推荐(0)
摘要: P8338 [AHOI2022] 排列 首先缩环,每个环有个数量, 对于有个点交换就是两个环合起来,然后求 lcm 这里需要知道一个很简单但是很重要的结论:对于 \(\sum a_i=n\) ,不同的 \(a_i\) 只会有 \(\sqrt n\) 的数量级 所以先去重一下,然后暴力枚举,那么就是 阅读全文
posted @ 2022-06-04 11:29 kzos 阅读(49) 评论(0) 推荐(0)
摘要: OIwiki 如果满足每一组不相交路径的排列都是 1,2,3,... 那么就没有逆序对,可以省略系数 \((-1)^k\),一般在网格图中可以满足 此时只讨论图上计数问题 设 \(e(u,v)\) 表示 \((u,v)\) 的路径的个数 题目特征一般是: 有起点集合,终点集合 起点集合和终点集合大小 阅读全文
posted @ 2022-06-04 11:26 kzos 阅读(118) 评论(0) 推荐(0)
摘要: 对于无穷序列 $f_1,f_2,...$ ,定义其狄利克雷生成函数为: $$ \tilde{F}(x)=\sum_{i\ge1}\frac{f_i}{i^x} $$ (全文都是以 DGF 为基础) 如果序列 $f$ 满足积性:$\forall i\perp j,f_{ij}=f_if_j$ ,那么其 阅读全文
posted @ 2022-06-04 11:26 kzos 阅读(308) 评论(0) 推荐(0)
摘要: \[ \hat{F}(x)=\sum_{n} a_n\frac{x^n}{n!} \] (全文都是以 EGF 为基础) 封闭形式 \[ \sum_{n\ge 1} \frac{x^n}{n!}=e^x \] 这个有关于麦克劳林级数(泰勒展开的一种特殊情况) 泰勒公式 若 \(x\) 在 \(x_0\ 阅读全文
posted @ 2022-06-04 11:25 kzos 阅读(118) 评论(0) 推荐(0)
摘要: 封闭形式 \[ {1,1,1,1,...}\to F(x) \] \[ F(x)x+1=F(x) \] \[ F(x)=\frac{1}{1-x} \] 例题 \(a=<1,2,3,...>\) \[ F(x)=\sum_{n\geq 0} (n+1)x^n \] 两边求导 \(a_n=\binom 阅读全文
posted @ 2022-06-04 11:24 kzos 阅读(186) 评论(0) 推荐(0)
摘要: OI-Wiki (具体证明等请看 OIwiki) 描述 给定多项式 \(g(x),f(x)\) 满足: \[ g(f(x))\equiv 0\pmod {x^n} \] 求出模 \(x^n\) 意义下的 \(f(x)\) 公式表现形式 假设已经求出了模 \(x^{\lfloor \frac{n}{2 阅读全文
posted @ 2022-06-04 11:23 kzos 阅读(46) 评论(0) 推荐(0)
摘要: 设 \(A(x)=\exp(B(x)),B(x)=\ln (A(x))\) 对于两边求导 \[ B'(x)=\frac{A'(x)}{A(x)} \] \[ xB'(x)A(x)=xA'(x) \] \[ nA_n=\sum_{i=1}^n iB_iA_{n-i} \] \[ A(n)=\frac{ 阅读全文
posted @ 2022-06-04 11:23 kzos 阅读(123) 评论(0) 推荐(0)
摘要: Oi-Wiki 定义 \(f^{R}(x)\) 为将多项式系数颠倒后的多项式 \(f^{R}(x)=x^{n}f(\frac{1}{x})\) 多项式的除法定义见:LG P4512 【模板】多项式除法 \[ x^nf(x)=x^{n-m}Q(x)x^mg(x)+x^{n-m+1}x^{m-1}R(x 阅读全文
posted @ 2022-06-04 11:17 kzos 阅读(138) 评论(0) 推荐(0)
摘要: 简介 大概是解决形如要求 \(c_i=\sum_{j\bigoplus k=i} A_jB_k\) 这个符号可以是 或,与,异或 整个的流程和 FFT 很像,先正变换成 \(FWT(A),FWT(B)\) ,然后将两者相乘,最后再逆变换 具体的证明和定义和一些繁杂的过程这里就不说了,直接上结论 因为 阅读全文
posted @ 2022-06-04 11:16 kzos 阅读(86) 评论(0) 推荐(0)
摘要: 质数模数 NTT 普通 FFT 有一个很大缺点就是精度和随带的速度 因为一直是在复数域,大量的 double 运算,精度的损失太大了,所以出现了 NTT (快速数论变换) NTT 的思想和 FFT 的思想是一样的,只是将原根换成了一个替代品$\to$关于模数的原根 倒数的地方就是原根关于模数的逆元 阅读全文
posted @ 2022-06-04 11:15 kzos 阅读(131) 评论(0) 推荐(0)
摘要: FFT 流程 以 P1919 【模板】A*B Problem 升级版(FFT 快速傅里叶变换) 为例 一个数字可以看成 \(a_i\times 10^i\) ,那么把两个数字转成多项式的形式,求最后每一项的系数 我们知道一个多项式可以通过 \(n\) 个系数,或者 \(n+1\) 个点值来确定,那么 阅读全文
posted @ 2022-06-04 11:10 kzos 阅读(74) 评论(0) 推荐(0)
摘要: 第二类斯特林数 记为 $\begin{Bmatrix} n\k\end{Bmatrix}$,或者 $S(n,k)$ 表示将 $n$ 个两两不相同的元素分成若干的非空集合的方案数 递推式 $$ S(n,k)=S(n-1,k-1)+kS(n-1,k) $$ $$ S(n,0)=[n=0] $$ 通项公式 阅读全文
posted @ 2022-06-04 10:33 kzos 阅读(146) 评论(0) 推荐(0)
摘要: 原文章 zeta 变换 \[ f\zeta(n)=\sum_{d|n}f(d) \] 其实可以将 zeta 变换看成一个对于质因子的幂次的高位前缀和 高位前缀和可以通过容斥转换成单点值,我们对于二维前缀和找找规律就可以发现 \(\mu\) 函数的一个直观含义就是,如果每个因子的个数都为 0 ,那么值 阅读全文
posted @ 2022-06-04 10:32 kzos 阅读(220) 评论(0) 推荐(0)
摘要: 定义 \[ \zeta(x)= \begin{cases} \frac{1}{p} &x 为有理数 \frac{p}{q} ,p\perp q ,p\in N^+,q\in Z\\ 1 &x=0\\ 0 &x为无理数 \end{cases} \] 之所以定义 \(\zeta(0)=1\) ,这样能使 阅读全文
posted @ 2022-06-04 10:27 kzos 阅读(867) 评论(0) 推荐(0)
摘要: BSGS 设 \(0\leq A,B\leq \sqrt p\) \[ a^{A\sqrt P -B}\equiv b\pmod P\\ a^{A\sqrt P}\equiv b\times a^{{B}} \pmod P \] 那么预处理出 \(b\times a^B\) ,枚举 \(A\) 看是 阅读全文
posted @ 2022-06-04 10:27 kzos 阅读(61) 评论(0) 推荐(0)
摘要: 定义 当 \(\gcd(a,p)=1\) ,最小的 \(n\) 使得 \(a^n\equiv 1\pmod p\) ,称为 \(a\) 模 \(p\) 的阶 ,\(n=\xi_p(a)\) 对于 \(g\) ,如果满足 \(\gcd(g,p)=1,\xi_p(g)=\varphi(p)\) ,那么 阅读全文
posted @ 2022-06-04 10:25 kzos 阅读(82) 评论(0) 推荐(0)
摘要: 原文章 OI-wiki 多重集 对于一个集合 \(S=\{n_1\times a_1,n_2\times a_2,...,n_k\times a_k\}\) ,意思就是由 \(n_i\) 个 \(a_i\) 组成 多重集组合数1 求选 \(r\) 个方案数,满足 \(n_i\leq r\) 答案显然 阅读全文
posted @ 2022-06-04 10:21 kzos 阅读(114) 评论(0) 推荐(0)
摘要: 筛法求约数和 设 \(f(i)\) 为 \(i\) 的约数和, \(g(i)\) 为 \(i\) 的最小的质因子的 \(p^0+p^1+p^2+....+p^k\) 线性筛的时候筛到自己最小的质数,如果自己已经是这个质数的倍数,那么 \[ g(i\times p)=g(i)\times p+1\\ 阅读全文
posted @ 2022-06-04 10:21 kzos 阅读(63) 评论(0) 推荐(0)
摘要: 定义 \(\varphi(n)\) 表示小于等于 \(n\) 的和 \(n\) 互质的数的个数 比如 \(\varphi(1)=1\) 当$n$ 为质数时 \(\varphi(n)=n-1\) \(\varphi(n)=n\prod_{i=1}^s(1-\frac{1}{p_i}),n=p_1^{c 阅读全文
posted @ 2022-06-04 10:20 kzos 阅读(128) 评论(0) 推荐(0)
摘要: 莫比乌斯函数定义 \[\mu(n)= \begin{cases} 1 &n=1\\ 0 &n 含有平方因子\\ (-1)^k & k\space为\space n\space 的本质不同质因子个数 \end{cases} \]性质 莫比乌斯函数不仅是积性函数,还有如下性质: \[\sum_{d|n} 阅读全文
posted @ 2022-06-04 10:16 kzos 阅读(70) 评论(0) 推荐(0)
摘要: 基础形式 众所周知,由 \(n+1\) 个点可以确定最高为 \(n\) 次多项式 给定 \(n\) 个点,求这 \(n\) 个点所确定的多项式在某个点的取值,\(f(k)\) \[ f(k)=\sum_{i=0}^n y_i\prod_{i\neq j} \frac{k-x_j}{x_i-x_j} 阅读全文
posted @ 2022-06-04 10:15 kzos 阅读(53) 评论(0) 推荐(0)
摘要: 第一种形式 \[ f(n)=\sum_{i=0}^n \binom{n}{i}g(i) \] \[ g(n)=\sum_{i=0}^n(-1)^{n-i}\binom{n}{i}f(i) \] 第二种形式 \[ f(k)=\sum_{i=k}^n \binom{i}{k} g(i) \] \[ g( 阅读全文
posted @ 2022-06-04 10:14 kzos 阅读(32) 评论(0) 推荐(0)
摘要: 杜教筛是用来在非线性时间内求积性函数的前缀和 前置知识 积性函数(莫比乌斯函数,欧拉函数。。。) 狄利克雷卷积 杜教筛 假设当前要求积性函数的 \(\sum_{i=1}^n f_i\) 那么我们找一个合适的另一个积性函数 \(g\) \[ \begin{aligned} &\sum_{i=1}^n( 阅读全文
posted @ 2022-06-04 10:10 kzos 阅读(83) 评论(0) 推荐(0)
摘要: 复数中的三角函数表示 假设复数 \(z\) 的模长为 \(l\) ,和 \(x\) 坐标的夹角为 \(\alpha\) \[ z=l(\cos(\alpha)+i\sin(\alpha)) \] 欧拉定理: \[ z=x+iy \] \[ e^z=e^x(\cos(y)+i\sin(y)) \] 更 阅读全文
posted @ 2022-06-04 10:07 kzos 阅读(533) 评论(0) 推荐(0)
摘要: P3177 [HAOI2015] 树上染色 考虑每一条边的贡献,就会发现这个贡献其实只和子树内的黑点的数量有关 那么设 \(dp[u][num]\) 表示 \(u\) 节点子树内有 \(num\) 个黑点的最大收益 P2607 [ZJOI2008] 骑士 可以发现最后的图就是一个基环森林,考虑一颗基 阅读全文
posted @ 2022-06-04 10:05 kzos 阅读(59) 评论(0) 推荐(0)
摘要: P4316 绿豆蛙的归宿 期望就要倒推,因为如果是正推可能还要记录概率,而且感觉不正确 参考代码 P1850 [NOIP2016 提高组] 换教室 设 \(dp[i][j][0/1]\) 表示此时是第 \(i\) 节课,换了几次,这次换不换 预处理出两个点之间的最短路就可以了 P3802 小魔女帕琪 阅读全文
posted @ 2022-06-04 10:05 kzos 阅读(63) 评论(0) 推荐(0)
摘要: 前言 主要是我对省选 2022 D1T2 一直耿耿于怀,所以就有了这一篇文章 感觉这一类题目似乎都挺套路的 学习不久,肯定有很多错误,望轻喷 前置知识 拉格朗日插值:\(f(k)=\sum_{i=0}^n y_i\prod_{j\neq i}\frac{k-x_j}{x_i-x_j}\) ,复杂度为 阅读全文
posted @ 2022-06-04 10:05 kzos 阅读(698) 评论(0) 推荐(1)
摘要: P2704 [NOI2001] 炮兵阵地 可以发现 \(M\leq 10\) ,那么考虑状压 因为状态和前 2 行都有关,那么考虑状压下每两行的状态 设 \(f[i][S_1][S_2]\) ,表示当前 \(i\) 行,当前行状态为 \(S_1\) ,上一行状态为 \(S_2\) 的方案数 P189 阅读全文
posted @ 2022-06-04 10:04 kzos 阅读(70) 评论(0) 推荐(0)