最后冲刺!!!|

铃狐sama

园龄:1年11个月粉丝:5关注:5

随笔分类 -  新学的知识

Hall 定理
摘要:Hall 定理: Hall定理: 设一个二分图,V1<=V2。 则V1能完美匹配的条件是,对于所有点集S属于V1,V1能到达V2的点集S2,满足S2>=S1 ex_Hall定理: 设一个二分图,V1<=V2 则,这个图的最大匹配ans=min(|V1-S1|+|S2|)=|V1|-max(|S1|-
89
0
0
详解主席树与二维数点问题
摘要:主席树与二维数点问题 前言: 自己在网上搜索了很久,都没有看到具体是怎么维护的,下课问了下,一下就点醒了。 正文: 先考虑主席树和二维数点有什么关系。 我们可以将y轴看成一个时间轴。 我们查询y1-y2之间的数字时,其实就是查询这些版本下的x1-x2的区间和,最后由于可加性,直接差分相减即可。 然后
177
0
0
可持久化数据结构(更新)
摘要:主席树学习 (无详细讲解过程,因为思想很简单) 目录主席树学习背景:可持久化线段树(主席树)模板:静态区间第k大更多应用:(其实就是加了一点其他模板)和树dfs一起出:一些总结:更新内容(2023/10/25)区间修改(持久化tag)更新内容(2023/10/29)可持久化并查集 背景: sensi
6
0
0
深度理解AC自动机与dp
摘要:AC自动机与dp 前言: 本篇题解隶属于https://www.cnblogs.com/linghusama/p/17742870.html部分 首先一定要理解fail跳的原理,不然很难理解第二维为什么要设置。 首先给出大致的雏形,dp_i_j表示目前拼凑出长度为i的字符串,且ac自动机上的指针在j
82
0
0
AC自动机学习
摘要:AC自动机自学笔记 目录AC自动机自学笔记用途:定义:Tire字典树Kmp算法:ac自动机代码(基础版):代码记忆方式:加强版分析:代码(加强版)对于ac自动机的优化:二次加强版代码:习题: 用途: 要学习之前肯定是要知道ac自动机是拿来干嘛的噻。 可以在一个字符串S中找到s1,s2,s3....的
14
0
0
数位dp学习笔记
摘要:数位dp学习笔记 目录数位dp学习笔记数位dp定义:题型特征:dp设计:dp转移例题:BZOJ 3679 数位dp 定义: ...好像就是对数位进行dp,统计方案数。 题型特征: 通常会有10组左右的询问,每一次询问你较大(1e18左右)的区间内满足某个条件的数的数量。 dp设计: dp一般会有2到
15
0
0
模拟退火详解
摘要:模拟退火学习(030920一上午成果) 目录模拟退火学习(030920一上午成果)前言:1. 爬山算法由来:2.模拟退火:算法流程:初学(我)的问题用题来进行理解:BZOJ1844 Run Away(cqbz的oj上有)回顾上面的问题:对于Q1对于Q2:Q2的补充:对于Q3易错补充: 前言: emm
30
0
0
浅谈WQS二分
摘要:## WQS二分学习笔记 [toc] ### 用途: WQS二分通常用来解决形如强制选k个且收益最大/代价最小的题目。 就比如说:https://www.luogu.com.cn/problem/P5308 如果没有限制的话,代码会非常简单 ### 思考方式: #### 使用限制: 首先要使用WQS
12
0
0
根号分治
摘要:## 块状思想自学 [toc] ### 一些定义: 分块的基本思想是,通过对原数据的适当划分,并在划分后的每一个块上预处理部分信息,从而较一般的暴力算法取得更优的时间复杂度。 分块的时间复杂度主要取决于分块的块长,一般可以通过均值不等式求出某个问题下的最优块长,以及相应的时间复杂度。 分块是一种很灵
24
0
0
高维前缀和详解
摘要:## 高维前缀和详解 [toc] ### 背景: sensei:我们随便上点技巧类型的东西吧,就这个高位前缀和......(讲了一堆k维前缀和复杂度证明后)......好我们看看版题。 版题: 现在有n(n≤20)个物品,确定每个物品的选取与否可以表示一个集合,那么这n个物品最多可以表示个2的n次方
163
0
0
线性代数(矩阵/高斯消元)
摘要:# 线性代数 ##前言: 最近咕咕咕了好久了,1是因为换了教室,2是因为很多题在做,没时间,3则是因为上了线性代数。 [toc] ## 矩阵 在c++中,矩阵可以用二维数组来表示,但是乘法的运算有点不同,要重新定义 ### 矩阵的基本运算 1.加/减/数乘运算:直接一一对应直接运算即可 2.乘法运算
31
0
0
vector最大流试预习
摘要:## 最大流预习 [toc] ### 前情提要: 看看人家初中,早就学完最大流最小割,还在最小费用流了,我却从来没有正式接触过 太丢脸了吧 所以今天尝试来写一下EK和DI ### EK算法流程 1.初始化 2.bfs找到一条增广路 3.找到限制边残余量k,这条路上正向边都减去k,反向边残余流量都加上
20
0
0
点双边双强连通拓展(圆方树)以及一些小技巧
摘要:# 点双边双强连通拓展以及一些小技巧 [toc] ## 小技巧: ### 1.关于割点: 点双常常存在割点情况,很难搞,每次dfs都很头疼(不知道割点在哪几个连通块中) 这时候直接每次dfs前手动把bcc内的点都染一个颜色,然后dfs时候看看now和to是不是一个颜色,就可以在一个块中dp了。 这样
21
0
0
图论杂项
摘要:## 图论杂项 [toc] ### 拓朴排序 #### 遍历(常应用于缩点后) 首先,对于遍历拓朴排序,很简单,bfs每次进入入度为0的点进来做,然后所有他连的点入度-1(相当于删除这个点)。 递归/dp等的遍历(剪枝) 这一点是我要详细介绍的。 首先,肯定可以知道的是,这个图肯定是可以dfs的。
7
0
0
最短路应用复习
摘要:## 最短路应用复习笔记 [toc] ### 最短路树 比较简单,主要可用于判断某边或者某点是否在最短路上 方法是从开始点dj一次,从末尾也dj一次,然后利用等式关系判断即可 ### 同余最短路 这个算是我很不理解的一个吧 说是实际上是对完全背包的一种优化(优化空间) 基本上就是这个模板:给出若干个
8
0
0
线段树分治结构
摘要:[toc] ### 线段树分治结构 #### 基本知识: 应用点: 当有些东西一会出现,一会又不出现时,可以使用线段树分治 方式: 维护某一个东西出现的时间段,并在线段树上打上标记,并dfs 遇到标记后,就相当于加入了这个物品。当dfs到叶子节点后,就可以得到叶子节点所代表的时间的性质 dfs返回时
12
0
0
CDQ分治的优化dp理解
摘要:## CDQ分治进阶:优化dp [toc] 蒟蒻做起来非常的蒙蔽 为什么蒙蔽呢? 因为我没有深刻了解CDQ分治 ### 对于CDQ的深层了解 对于基础的CDQ,我的顺序是可以改变的。 什么顺序:众所周知,CDQ分治分为分治和计算两个部分,这个顺序就是指先分治左右两侧还是先计算中间有mid隔阂的 但是
286
0
0
CDQ分治基础版
摘要:## CDQ分治学习笔记——基础分治 (后面会有更复杂的优化dpCDQ) awa 我绝对不会承认因为我还不会CDQ优化dp所以才不写进阶分治的 QAQ [toc] CDQ分治,怎么说呢,主要是为了优化时间复杂度用的,常用于多维偏序(找点对数量) ### 偏序: 比如对于一个变量(结构体)而言,有三个
21
0
0
李超线段树模板
摘要:细节和理解详见注释 题目:https://www.luogu.com.cn/problem/P4097 ```c++ #include using namespace std; #define int long long const int mod1=39989; const int mod2=1e
9
0
0
DSU on tree——从入门到入土
摘要:# DSU on tree——从入门到入土 [TOC] ## 1.dsu有什么用? ### 降低时间复杂度——nlogn dsu的作用在于将时间复杂度降低,由n方到nlogn 举个例子: 给一棵根为1的树,每次询问某个子树内颜色有多少种。树有N个节点,询问有M次。颜色范围为 [1,N]的整数。 数据
34
0
0
点击右上角即可分享
微信分享提示
深色
回顶
收起