10 2018 档案
摘要:非流图论主要包括tarjan、最短路、生成树、2 sat、Kruskal重构树、优化建图、差分约束系统、邻接矩阵、最长畈链。 tarjan tarjan的应用是建出SCCDAG、BCC树、 "双连通分量树" 、 "割顶树" 。在这些结构基础上做其他算法。 最短路 最短路主要应用是最短路建模(拆点、枚
阅读全文
摘要:无向图中,求去掉点x[1,n]后每个联通块的大小。 考虑tarjan求bcc的dfs树,对于每个点u及其儿子v,若low[v]
阅读全文
摘要:楼房重建(BZOJ2957) 多次询问一个区间中大于区间内这个数之前所有数的数的数量。 每个线段树结点维护该节点的答案c和区间内最大值m。假设有函数get(x,cm)=结点x中答案 cm的长度。则有c[x]=c[ls[x]]+get(rs[x],m[ls[x]])。 考虑计算get(x,cm)。若c
阅读全文
摘要:环长图中,一条环的长度等于环上的边权之和。且边权有如下性质。 \ from 《集合问题》 题解
阅读全文
摘要:如果等式两边都是乘除,取对数即可。 另:可用指标将幂转化为积。
阅读全文
摘要:概述 差分约束系统用于解决:给定一些不等式,不等式$i$形如$x_{u_i}\le x_{v_i}+k_i$,求是否有解。 考虑最短路问题,若最短路问题有解,则最后的dis数组对于所有相邻的u、v满足$dis[v]\le dis[u]+w_{u\rightarrow v}$。这个可以与不等式的条件做
阅读全文
摘要:相交的两条边不能在同一侧,用2 sat即可。 平面图点数 边数关系 $E\le 3V 6$ 写这篇文章我只是想说明,知乎一小时,题解一分钟。 lb Zhihu, gos langar Qarwet con Nii Owenoicuukoanimacionihlimo. mn gos log ab d
阅读全文
摘要:就是区间覆盖模型的费用流版。 "区间覆盖模型"
阅读全文
摘要:给定一个带边权的无向图,求1到n的最小代价路径。经过一个点的代价是路径上这个点的入边和出边的较大权值。 $n \le 100000, m \le 200000$。 一般的建图是考虑每个点,其入边和出边之间两两连边,边权为较大值。这样菊花图就是$O(n^2)$的。 考虑“较大值”这个过程,考虑用前缀和
阅读全文
摘要:给定一个无向图,每次删除一条边,求每次有多少关键边。一条边是关键边,当且仅当从1到n的所有路径都包含这条边。所有时刻图都联通。 考虑倒着做。相当于给一棵树,每次加一条边,这样树上这条边的两个端点间的路径就不再是关键边了。用树链剖分维护即可。
阅读全文
摘要:天天听这几道题,但其实题面都没看过。今天做一下。 每道题看懂题后基本一分钟左右就切了。D2T3想的是$O(n\log n)$的堆做法,至少90分吧。 D1T1模拟即可。 D1T2每条路径拆成到根的四条路径,转化成向上/向下两种等差数列,要求w[i]=st+dpt[u] dpt[i]的个数,把dpt[
阅读全文
摘要:每次询问[l,r]区间,但所有信息是按另一种序列给出的,因此无法使用区间数据结构做这种题。将每个询问改为[1,x],考虑离线,则从1~n依次修改并查询即可。 BZOJ3626 给定一颗树,每次询问给定l,r,x,求$\sum_{u=l}^rdpt[lca(u, z)]$。 每次询问相当于将l~r的点
阅读全文
摘要:今天我想真的是状态问题。没法认真想题。早睡好。 第二题其实可以算NOIP+,但我真没认真想。 第三题也算吧。 第一题不知道。 这几天考得不好。第一天一道DP不会,第二天一道DP不会,今天两道DP不会。 当然,明天就会了。 看看Suma??
阅读全文
摘要:先将所有点和询问读下来,按每一维离散化。 之后开n个vector,表示横坐标为i的点。可以$O(n)$处理二维前缀和。 查询时在vector中lower_bound,差分即可。 总时间复杂度$O(n\log n)$,空间复杂度$O(n)$,常数可能比扫描线小。
阅读全文
摘要:给定若干个集合,求选边权和最小的边集使每个集合中的点联通。 先为所有集合中的点做斯坦纳树,求出f[i][S]。设g[C]表示集合联通状态为C的最小代价,先将每个集合的g[C]赋初值,然后做子集DP。
阅读全文
摘要:混合图有欧拉回路相当于将所有无向边定向为有向边后的有向图存在欧拉回路,判定条件是每个点的入度=出度。 考虑先将每条无向边随便定向,最后使每个点满足入度=出度。若一个点的$ |ind oud|\nmid 2$,则无论如何都无法使入度=出度,无解。 对于定向的无向边u v,在网络流图中建边v u(1),
阅读全文
摘要:无源无汇可行流(事实上我不知道这个该叫什么) 一条边拆为三条边,流SS TT。附加边满流时有解。 可行流 一条边拆为三条边,加边T S($\inf$),流SS TT。附加边满流时有解。 最大流 先跑可行流,再流S T。答案=S T最大流。 最小流 先跑 无源无汇 可行流,再跑可行流。答案=TT SS
阅读全文
摘要:在n×m的表格上,在(x,y)填v的代价是w(x,y,v),且相邻格子填的数相差≤d。求填满表格的最小代价。n,m,maxv≤40。 每个点上 选择 一个数填,因此将上面的数串起来。考虑限制条件,矛盾条件是一个格子填a而旁边格子填了小于a d或大于a+d的。不妨只考虑一个格子填a而旁边格子填小于a
阅读全文
摘要:有一些区间,选择区间$i$可以获得$w_i$的收益,要求每个点上选择的区间少于$k$个,求最大收益。 建图$S(k) \rightarrow x_1(k)\rightarrow x_2(k)\rightarrow...(k)\rightarrow x_n$,对于每个区间有$x_{l_i} (1,w_
阅读全文
摘要:“最大流”标签由于指代不明已被取消。 “最小割”标签指最小割性质和最小割选择模型。
阅读全文
摘要:概述 路径覆盖模型的特点是DAG中每个点经过且只经过一次,且一条路径覆盖路径上的所有点。 将每个点拆为$x$和$x'$,暂不考虑其实际意义。然后连边$S\rightarrow x$,$x'\rightarrow T$,对于原图中的边$u\rightarrow v$,连边$u\rightarrow v
阅读全文
摘要:整体二分用于这样的问题: 可离线 询问答案可用二分+check得到,check内容为扫一遍询问之前的操作 询问类型相同 考虑一个询问,如果二分答案之后得知答案区间在$[l,mid]$,那么$(mid,r]$的修改在以后都不需要了。同样若答案区间在$(mid,r]$,那么把询问的要求减去前半部分的贡献
阅读全文
摘要:Gold is everywhen! somebody 启发式合并 将小的集合一个个插入到大的集合。 每次新集合大小至少比小集合大一倍,因此每个元素最多合并$\log n$次,总复杂度为$n\log n$ × 插入复杂度。 splay合并 将小的splay按中序遍历一个个插入到大的splay。 可证
阅读全文
摘要:组昂树用于统计每个节点的子树的信息。复杂度为$O(n\log n)$。 先将原树轻重路径剖分,之后遍历树。solve(u)表示统计u结点子树的答案,考虑以下过程:先调用solve(轻儿子),且不保留计算结果。然后调用solve(重儿子),保留计算结果。最后再计算所有轻儿子的子树的答案和自己的答案,更
阅读全文
摘要:以前的博客:高斯消元,线性基,行列式。 考虑将$A$消成单位矩阵,同时对单位矩阵$I$做同样的操作,这样$A$变成$I$,而$I$变成$A^{ 1}$。 用高斯消元即可。 若一列中全是0,说明该矩阵是奇异矩阵。
阅读全文
摘要:10.8 学习广义后缀自动机,学习了单调队列优化01背包。 10.9 学习了广义后缀自动机、霍尔定理,做线段树题。学了NOIP初赛知识。做了一些后缀自动机题,学了矩阵的逆。 10.10 考试复习了CDQ分治、树套树、点分树,学习了T3。学习了dsu on tree。复习了线段树合并、splay合并、
阅读全文
摘要:设二分图的两部分为$X、Y$,且$|X|\le|Y|$。则定理描述为:二分图存在完美匹配,等价于对于$X$的任意子集$X'$,与它们中任意点相连的$Y$的结点个数$\ge |X'|$。
阅读全文
摘要:朴素的多重背包算法为 $$ f[i][j]=\max(f[i 1][j kv_i]+kw_i)(kv_i\le j,k\le lim[i]) $$ 时间复杂度为$O(V\sum lim[])$。 先枚举i。设$d=\lfloor\frac{j}{lim[i]}\rfloor$,$r=j lim[i
阅读全文
摘要:title 字符串 边境 边境 是字符串的一段相等的前缀和后缀。
阅读全文
摘要:其实你应该在百度上搜索“吉司机线段树” 区间取最值、区间求和问题 考虑这样一种做法:线段树维护区间的最大值、次大值、最大值个数,在询问值≥最大值时直接退出,询问值$\in(max2,max)$时更新信息并打标记,询问值≤次大值时递归左右儿子区间。 由于取最值操作时不同数字种数减少,而递归操作的次数是
阅读全文
摘要:最近考试发挥稳定,思维强度高,代码失误率低。虽然看不出与Haik lme Sumvac有什么关系,但提升可能的确是有的。之前haik也是确有其事。之前我提出了一个概念叫NOIP+,亦或二级算法题,是最令人喜欢的题。它完全贯彻了Sjan lme Gume,一个unwheeling depending和
阅读全文
摘要:欧拉准则 $a$是$p$的二次剩余等价于$a^{\frac{p 1}{2}}\equiv 1\pmod p$,$a$不是$p$的二次剩余等价于$a^{\frac{p 1}{2}}\equiv 1\pmod p$。 Cipolla 若$a^2 n$不是$p$的二次剩余,则$p$的二次剩余为$(a+\s
阅读全文
摘要:首先学习基数排序。 这一块是对y数组操作,先将n k到n 1放进去,再将[0,n)中sa[i] k =0的sa[i] k放进去。 这是处理新的x数组。y是充当原来的x。其他细节与代码相同。
阅读全文

浙公网安备 33010602011771号