RainAir
My OI Blog
RainAir

学习笔记
文章归档

后缀数组学习笔记

先存个代码,以后再更。 [crayon-5c950d599bae8811162562/]

   13   2019-03-21 去围观

斐波那契数列学习笔记

定义 $$ F_n = \begin{cases} 0 & n = 0 \\ 1 & n = 1 \\ F_{n-1}+F_{n-2} & otherwise \end{cases} $$ 一些小性质 一些 simple 的运算 运算 1 $$F_n = F_{n+2} - F_{n+1}$$ 证明:拆开算就可以了 $$F_{n+2}-F_{n+1} = F_{n+1}+F_n - F_{n+1}…

   66   2019-03-14 去围观

线性基学习笔记

本文使用符号 $\vec{a_i}$ 来表示向量。 定义 基 是线性代数中的一个概念,它是描述,刻画线性空间的一个工具。在 OI 中经常和异或运算扯上关系。 前置芝士 向量空间 向量空间 - 维基百科 定义 $(F,V,+,\cdot)$ 为向量空间,其中 $F$ 为域,$V$ 是向量,$+$ 是向…

   48   2019-03-09 去围观

多项式初步

多项式算法学习笔记 定义 形如 $\sum a_ix^{i}$ 的式子被称为多项式。定义多项式中每个单项式叫做这个多项式的项,定义多项式的次数为项的最高次数。显然 $(n+1)$ 个点可以唯一确定一个次数为 $n$ 的多项式。 接下来我们首先来看一下多项式的基本运算怎么实现(要不…

   136   2019-02-28 去围观

二维树状数组学习笔记

我们把树状数组由一维扩展到二维。二维树状数组的定义是: $C[x][y] = \sum A[i][j]$,其中 $x - lowbit(x) + 1 \leq i \leq x$ $y - lowbit(y) + 1 \leq j \leq y$ 所以我们就可以很方便的写出来单点修改和查询 $(1,1)$ 到 $(x,y)$ 的和的代码了: [crayon-5c950d59…

   163   2019-02-07 去围观

Splay 如何维护区间信息

如何维护区间 我们都知道平衡树是一种很神奇的东西,可以用于维护动态的序列总信息,但是如果想维护其中的某一个区间的信息,我们该怎么做好呢? 我们考虑换一种维护方式:平衡树的结构不是按照节点的值的大小来进行建树,而是以这个节点在序列中的位置为关键字来维护…

   176   2019-02-02 去围观

KD-Tree 学习笔记

K-D Tree,全名k-dimensional Tree,是一种分割k维数据空间的数据结构。主要应用于多维空间关键数据的搜索(如:范围搜索和最近邻搜索)。K-D Tree是二进制空间分割树的特殊的情况,以下是一棵二维空间上的 k-d tree: 建树 K-D Tree 的建树过程类似于平衡树:对于…

   167   2019-01-31 去围观

LCT 维护子树信息

众所周知 LCT 可以用来维护动态树的点权信息,但是总有一些题目让你维护动态树上的子树信息或者是链信息,就在这里拿一道经典的题目讲一讲。 「UOJ207」共价大爷游长沙 题目链接 题目要求维护动态树和一个路径集合,询问某一条边是否被路径集合中所有的路径经过。 首…

   149   2019-01-30 去围观

点分治初探

点分治是什么: 首先选取一个点将无根树转为有根树,再递归处理每一棵以根节点的儿子为根的子树。 这样得到的分治结构有何用处? 通俗地讲,对任一个点,树的任一条路径要么经过这个点,要么不经过这个点,在这个点的子树里面。这对于树路径的计数等问题能够更容易的解…

   130   2019-01-29 去围观

树上启发式合并学习笔记

首先什么是启发式算法?启发式算法是基于人类的经验和直观感觉,对一些算法的优化。 最简单的就是并查集的按秩合并,每次把小的合并到大的上面,这样找父亲的复杂度就小了很多。 树上启发式合并(dsu on tree)是一种我也不知道为什么叫做这个名字的奇怪算法。 特点是…

   130   2019-01-29 去围观
加载更多
文章归档