学习笔记
文章平均质量分 90
Recalling_Clouds
千般荒凉,以此为梦;万里蹀躞,以此为归。
展开
-
斯特林的试炼
下面提到的内容均属组合数学范畴。前言由于式子较多,为增强直观性,笔者将一改以往的笔风,用 (nm)\displaystyle\binom{n}{m}(mn) 表示组合数 Cnm\operatorname{C}_n^mCnm。同理,笔者分别会用 [nk]\begin{bmatrix}n \\ k\end{bmatrix}[nk] 和 {nk}\begin{Bmatrix}n \\ k\end{Bmatrix}{nk} 表示第一类斯特林数 s(n,k)s(n, k)s(n,k) 和第二类斯特林数原创 2022-02-10 20:34:18 · 439 阅读 · 0 评论 -
多项式全家桶
下面的所有知识均属多项式范畴。前言本文略去多项式的定义,毕竟初中数学都讲过。本文会出现一些可能没有见过的表达:对于一个关于 xxx 的多项式 f(x)f(x)f(x),有时也称其最高次项次数为 f(x)f(x)f(x) 的度数。多项式同样定义了四则运算,包括常数与多项式的四则运算和多项式之间的四则运算,同时也衍生出了同余符号 ≡\equiv≡、对数函数 ln(f(x))\ln(f(x))ln(f(x)),指数函数 exp(f(x))\exp(f(x))exp(f(x)) 等等。下文一般采原创 2022-01-23 19:16:38 · 746 阅读 · 0 评论 -
线性空间和OI中的线性基
下面的所有知识均属线性代数范畴。基础知识线性空间指关于向量加法和标量乘法两个运算封闭的向量集。表出如果若干向量 a1,a2,⋯ ,aka_1,a_2,\cdots, a_ka1,a2,⋯,ak,能够通过向量加法和标量乘法生成向量 bbb,即 v1a1+v2a2+⋯vkak=bv_1a_1 + v_2a_2 + \cdots v_ka_k = bv1a1+v2a2+⋯vkak=b(vvv 为标量),则称向量 bbb 能够被向量 a1,a2,⋯ ,aka_1,a_2,\cd原创 2022-01-20 22:26:08 · 717 阅读 · 0 评论 -
博弈论之SG函数
下面的所有知识均属博弈论范畴。SG\operatorname{SG}SG 函数Nim\operatorname{Nim}Nim 博弈在介绍 SG\operatorname{SG}SG 函数前,我们先介绍一种经典的博弈——Nim\operatorname{Nim}Nim 博弈,并从中获得一定的启发。问题:有 nnn 堆石子,第 iii 堆石子里面有 AiA_iAi 枚石子,每人每次可从任意且至多一堆石子里取出任意多枚石子扔掉,可以取完,不能不取,最后无石子可取的人判负。假如甲是先手,且原创 2022-01-20 22:25:33 · 1058 阅读 · 0 评论 -
整除和同余相关理论
下面的所有知识均属数论范畴。LucasLucasLucas 定理当 ppp 为质数时有:Cnm mod p=Cn/pm/p∗Cn mod pm mod p mod pC_n^m \bmod p= C_{n / p}^{m / p} * C_{n~\bmod~p}^{m~\bmod~p} \bmod pCnmmodp=Cn/pm/p∗Cn mod pm mod pmodp代码就不贴了 (实际上是懒)。原创 2022-01-20 22:23:08 · 493 阅读 · 0 评论 -
函数与表达式的反演变换
下面提到的所有知识不一定同属一个范畴,但是它们的思想和作用相似,所以将其归为一篇文章。莫比乌斯反演请先学习狄利克雷卷积,否则您会一脸懵逼。一般式:F(n)=∑d∣nG(d)→G(n)=∑d∣nμ(nd)F(d)F(n)=∑n∣dG(d)→G(n)=∑n∣dμ(dn)F(d)\begin{aligned}F(n) = \sum_{d | n} G(d) \rightarrow G(n) = \sum_{d | n} \mu(\frac{n}{d}) F(d)\\F(n) = \sum_{n原创 2022-01-20 22:22:20 · 936 阅读 · 0 评论 -
积性函数的筛法
下面的所有知识均属数论范畴。欧拉筛可以做到 O(n)O(n)O(n) 的线性复杂度!可以筛所有的积性函数(即对于所有的 a⊥ba \perp ba⊥b 都满足 f(ab)=f(a)∗f(b)f(ab) = f(a)*f(b)f(ab)=f(a)∗f(b) 的函数)。举两个例子:线性筛欧拉函数:inline void Sieve(){ phi[1] = 1; for(register int i = 2; i <= MAXN; i++) //MAXN表示值域 {原创 2022-01-20 22:21:31 · 191 阅读 · 0 评论 -
OI数学小记
数论积性函数的筛法整除和同余相关理论多项式多项式全家桶组合数学斯特林的试炼博弈论博弈论之SG函数线性代数线性空间和OI中的线性基杂项注:每篇文章中的内容不一定属于同一个范畴,但是思想和作用相似。函数与表达式的反演变换To Be Continued⋯⋯\mathit{To~Be~Continued\cdots\cdots}To Be Continued⋯⋯...原创 2022-01-19 21:48:12 · 129 阅读 · 0 评论 -
Segment Tree Beats 小记
就拿洛谷的模板题来举例吧。我们先简化一下各个操作的定义:操作 111:区间加 kkk;操作 222:区间同 vvv 取 min\minmin;操作 333:区间求和;操作 444:区间求最大值;操作 555:区间求最大的历史最大值。其中操作 222 和 555 是比较复杂的,所以我们需要用到吉老师发明的线段树——Segment Tree BeatsSegment~Tree~BeatsSegment Tree Beats。(注:所有的操作通过势能分析原创 2022-01-14 21:43:29 · 238 阅读 · 0 评论 -
动态DP 学习笔记
前言温馨提示:本文将会讲述树链剖分(会提到 LCT 的做法)和全局平衡二叉树两种方法,所以强烈建议两种方法都想学习的读者仔细阅读完本文!(真不要脸)动态 DP,它的模板题之所以和动态树分治放在一起,是因为它们有两个共同特点:它们在没有修改时都是用于维护树上信息的它们都是带修改的,即动态的所以,动态 DP 一般是用于解决动态维护树上信息的问题这类问题最初只是可爱的树形 DP,却被丧心病狂的出题人套上了修改操作,褪去了原本善良的模样那么,在学习动态 DP 之前,你需要掌握以下前置知识:原创 2022-01-12 14:41:42 · 279 阅读 · 0 评论 -
平衡树学习笔记
平衡树学不会的,这辈子都学不会的一、前置芝士平衡树本质上看是一种 BST(二叉排序树)而 BST 其实是一种非常容易理解的良心数据结构BST 保证了这颗树的中序遍历是单调上升的举个例子:BST 支持插入、删除以及查询等多种操作,我们一一来讲述插入插入很简单我们知道二叉排序树有一个性质:对于每一个结点,设它的点权为 valvalval,那么它的左子树中的每一个点权值必定小于 valvalval,它的右子树中的每一个点权值必定大于 valvalval插入时我们对于当前访问到的点的权值原创 2022-01-12 14:39:25 · 274 阅读 · 0 评论 -
KD - Tree 学习笔记
(这本是 P4169 的一篇无法提交的题解)而 KD - Tree 本身在竞赛中的应用就比较少,又几乎不作为正解出现,所以这里只拿一道例题来举例讲解题意:给定一个二维点集 S ,每次有两种操作:操作 1 : 往点集 S 中加入一个点操作 2 : 给定一个点 (x,y)(x, y)(x,y) ,询问该点到点集 S 中每个点曼哈顿距离的最小值两点 (x1,y1),(x2,y2)(x_1, y_1), (x_2, y_2)(x1,y1),(x2,y2) 之间的曼哈顿距离定义为:∣x1−x2原创 2022-01-12 14:36:00 · 228 阅读 · 0 评论