自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

转载 【高级数据结构】K-D Tree

【高级数据结构】K-D Tree$K-D Tree$ 是用来解决K维空间中数点问题强有力的数据结构,可以在 $(NlogN)$ ——$(N\sqrt{N})$ 的时间复杂度内完成查询和修改。一、K-D Tree的做法$K-D Tree$ 当K等于 $1$ 时,就是一颗替罪羊树树(平衡树的一种)。我们把 $K-D Tree$ 扩展到 $K$ 维空间。$K-D Tree$ 是一...

2018-12-17 13:50:00 175

转载 【FFT】快速傅里叶变换

【FFT】快速傅里叶变换一、复数1、定义复数:设 $a$,$b$为实数,$i^{2}=−1$,形如 $a+bi$的数叫复数,其中 $i$被称为虚数单位,复数域是目前已知最大的域在复平面中,$x$代表实数,$y$轴(除原点外的点)代表虚数,从原点 $(0,0)$ 到 $(a,b)$ 的向量表示复数 $a+bi$模长:从原点 $(0,0)$ 到点 $(a,b...

2018-12-17 13:12:00 141

转载 P3302 [SDOI2013]森林(主席树+倍增或LCT维护LCA)

P3302 [SDOI2013]森林(主席树+倍增或LCT维护LCA)这道题要我们维护区间第K大,我们想到了主席树。而这道题要我们动态维护加边,我们想到了 $LCT$ 。对于树上的一条路径,我们可以使用差分的思想,设 $x$ 到 $y$ 的路径, $x$ 与 $y$ 的最近公共祖先为 $lca$ ,$A_i$ 表示从 $i$点到根结点维护的信息,那么我们可以利用 $A_x +...

2018-12-10 20:46:00 170

转载 【启发式合并】线段树,平衡树

【启发式合并】线段树,平衡树启发式合并就是一种复杂度可以证明的贪心合并平衡树启发式合并:对于平衡树的启发式合并,我们将一个 $size$ 较小平衡树一个一个结点暴力加入 $size$ 较大的平衡树中最坏时间复杂度是玄学的 $O(N log^{2} N)$空间复杂度 $O(N)$模板题:P3224 [HNOI2012]永无乡 1 #include<b...

2018-12-07 11:07:00 199

转载 CF1059E Split the Tree(树形DP,倍增,树上DFS序二分)

CF1059E Split the Tree(树形DP,倍增,树上DFS序二分)题目链接:CF1059E我们可以先倍增预处理出从每个结点向上最多能延伸多长,用 $len[u]$ 表示我们再观察一下DP方程 $f[u]=max (f[v])$ , $num[u]=\sum num[v]$ $(fa[v]=u)$如果当前点 $f[u]=-1$,则 $f[u]=len[u...

2018-12-06 20:21:00 120

转载 CF1059D Nature Reserve (精度处理,计算几何,二分)

CF1059D Nature Reserve (精度处理,计算几何,二分)题目链接:CF1059D首先处理无解情况,如果在 $x$ 轴两侧都有点,则无解。我们在将所有 $y$ 值都变为正数方便处理如果圆与 $x$ 轴相切,则该圆的一条半径垂直于 $x$ 轴。于是我们可以二分半径 $R$那么圆心的纵坐标是确定的,那么我们如何判断该半径能否覆盖所有圆呢?如图...

2018-12-06 18:12:00 207

转载 【高级数据结构】cdq分治(陌上花开·三维偏序)

【高级数据结构】cdq分治(陌上花开·三维偏序)一、陌上花开题目链接:陌上花开对于这道题我们需要求三维偏序中每个元素比其小的元素个数我们先对数组进行排序,$x$ 为第一关键字,$y$ 为第二关键字,$z$ 为第三关键字,从小到大排序 1 struct Point{ 2 int x,y,z,ans,num; 3 bool operat...

2018-12-06 15:05:00 109

转载 CF1080E Sonya and Matrix Beauty (字符串哈希,Manachar算法)

CF1080E Sonya and Matrix Beauty (字符串哈希,Manachar算法)题目链接:CF1080E这道题思维十分巧妙;回文串有这样几个性质:$1、$ 长度为偶数的回文串中所有字符出现次数均为偶数$2、$ 长度为奇数的回文串中仅且只有一个字符出现次数为奇数,其余字符出现次数为偶数所以我们只要统计一行中的每个字符出现次数便可判断该行是否成立...

2018-12-06 10:12:00 158

转载 CF1080D Olya and magical square

CF1080D Olya and magical square\题目链接:CF1080这是一道很值得探究的数论找规律题(虽然大多数论都是找规律题)为了简化题目,我们将所走的路径都放到正方形的边缘上性质一:如果 $n>31$,那么我们可以对整个正方形切割一次,再对右下角的正方形随意切割,显然右下角的正方形的能够被切割的次数一定不小于 $10^{18}$。因此当...

2018-12-06 08:29:00 100

转载 CF1080C Masha and two friends (矩阵的重叠面积)

CF1080C Masha and two friends (矩阵的重叠面积)题目链接:CF1080C有关在坐标轴内矩阵的重叠覆盖,格点计算都是毒瘤题,但见到了还是要A的这类题目一般会有一些化繁为简的技巧这道题,是有关黑白格点的计算,我们可以利用容斥来做首先我们记 $B(x_1,y_1,x_2,y_2)$和W(x_1,y_1,x_2,y_2)分别为矩形(x_1...

2018-12-05 21:03:00 99

转载 CF1080F Katya and Segments Sets (可持久化数组,排序降维)

CF1080FKatya and Segments Sets题目链接:CF1080F我们考虑先将 $l$ 按从大到小排序,我们就可以降掉一维。我们通过二分可以在 $log \ K$ 的时间复杂度内快速找到有效的 $l$ 端点;我们对于每个 $l$ 的数组下标为根建一个线段树我们的线段树维护的是:以集合的标号 $p$ 为下标,每一个集合内所有线段的 $r$的最小值。...

2018-12-05 20:20:00 150

转载 Tips

1、倍增求距离时,要注意将最后和父节点的距离算上2、逆序对开long long3、如果是求关于2份的,注意间隔计算(最大取值时)例:P31434、使用差分约束系统时,要先spfa一遍判断所有点是否连通 例:[USACO05DEC]layout布局5、a%b=a-b*(a/b) a/b向下取整6、定义局部变量未赋值直接计算会死的莫名其妙7、scanf里不能++cnt8、inline ...

2018-12-05 12:55:00 70

转载 【动态树】动态树的应用 (总)

【动态树】动态树的应用 (总)一、维护链的信息通过split在树中处理出一条链,y点所储存的值就是答案当要处理树的边权相关的问题时,我们可以化一条边为一个带权的点,就可以一般化处理了二、动态维护连通性&强联通分量维护连通性:findroot进行判断,其他就是link、cut的操作了维护强联通分量:如果要连结A和B,若发现A和B在同一颗LCT中,...

2018-12-04 14:36:00 114

转载 【动态规划】动态DP (树链剖分维护&&全局平衡二叉树维护)

【动态规划】动态$DP$ (树链剖分维护&&LCT维护)一、不带修改的树形$DP$有这样一道题:没有上司的舞会我们可以很快地得出树形$DP$的转移方程,以达到$O(N)$求解void dfs (int u,int fa){ for (int i=head[u];i!=0;i=e[i].nxt) if (e[i].v...

2018-12-04 11:15:00 205

转载 【分治】动态点分治 ([ZJOI2007]捉迷藏)

动态点分治先看一道题目[ZJOI2007]捉迷藏显然如果不带修改O(N)的树形动规和O(NlogN)的静态点分治都可以切掉这道题一、点分树考虑点分治,对于每一个分治区域树的重心的答案只会与其所有子区域树有关,所以我们可以再构建一颗点分树:在点分治的过程中,我们把每个区域树的重心和其子区域树的重心建立父子关系,形成了一颗新的树,称为点分树。点分树的性质:1、一颗点...

2018-12-03 12:28:00 90

转载 【图论】Tarjan 割点(割顶)

割点的概念在无向连通图中,如果将其中一个点以及所有连接该点的边去掉,图就不再连通,那么这个点就叫做割点(cut vertex / articulation point)。例如,在下图中,0、3是割点,因为将0和3中任意一个去掉之后,图就不再连通。如果去掉0,则图被分成1、2和3、4两个连通分量;如果去掉3,则图被分成0、1、2和4两个连通分量。怎么求割点Tarjan算法可以使...

2018-12-03 09:50:00 243

转载 【图论】Tarjan 缩点

【Tarjan】缩点在一个点N数据极大的图中,直接SPFA或者记忆花搜索时间超限,那么我们可以利用Tarjan缩点来减少N。举个例子;如上图:3,6两点为该图中的强连通分量,我们可以将它们看做一个单元点。怎么缩点呢我们使用fa[]数组来存每个点所在的强连通分量中时间戳(DFN)最小的点,即将该点设为单元点。怎么连边如果两个点的fa[]不一样,且该两点间有一条有向边,那么我...

2018-12-03 09:48:00 142

转载 【高级数据结构】左偏树

【高级数据结构】左偏树一、左偏树是什么左偏树的基础——堆我们曾经学习过基础数据结构之一——堆(heap)堆支持三种操作(以小根堆为例)1、查询(query):查询堆中最小的元素2、删除(del):删除堆中的任意一个元素3、插入(insert):插入一个新元素4、维护(modify):维护堆的性质:任何非叶子结点的权值都大于它的所有子结点。在删除和插入后进行维护左偏树的用...

2018-12-03 09:45:00 257

转载 【网络流·最大流】ISAP(Improved Shortest Augumenting Path)详解

ISAP算法一、为什么我们要学习相比EK、Dinic、SAP算法,时间复杂度更低,可以轻松(不加优化,不卡常)过一些数据强力网络流题,如: [题目传送门](https://www.luogu.org/problemnew/show/P4722)但编程复杂度相差不大,所以在NOIP、NOI、IOI比赛上更具优势,是编写网络流题目的首选PS:不会Dinic的先去看[Dinic...

2018-12-03 09:30:00 531

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除