随笔分类 -  网络流

摘要:T1 我们可以考虑最小割树的逆过程。 然后根据最小割情况复原出最小割树。 每次找到当前集合中最小的割。 然后用并查集链接割大于最小的割的情况。 这样就可以做到分割两个集合了。 递归下去判断是否有解即可。 T2 考虑做树形$dp$。 设: $f[x][i]$为$x$的子树中经过了$i$个点直径的一个端 阅读全文
posted @ 2020-04-21 21:40 Lrefrain 阅读(136) 评论(0) 推荐(0)
摘要:T1 看起来是个状压$dp$。 设$dp[i][j][S]$为前$i$行,放置了$j$个哲学家,第$i$行放的情况是$S$的方案数。 那么对于两个状态,能否由上一行转移到这一行会存在一些判断,这些判断暴力写一写就行了,也不是很恶心。 对于两个状态能够转移的话$s_1\rightarrow s_2$, 阅读全文
posted @ 2020-04-17 15:01 Lrefrain 阅读(111) 评论(0) 推荐(0)
摘要:T1 任意时刻棋子不会互相干扰。 那么我们直接做一个费用流模型。 然后用$ZKW$费用流给他搞上就行了。 T2 设$dp[l][r][h]$为区间$[l,r]$中$h$以下的点全都被覆盖的最小矩形数。 然后枚举中间点来更新。 同时把覆盖整个区间的情况给转移到位。 从左右分别指针扫到比当前最高高度更高 阅读全文
posted @ 2020-04-01 19:30 Lrefrain 阅读(110) 评论(0) 推荐(0)
摘要:刷了一下,写一下。 T1. 天天爱射击 可以这样想。 我们二分一下每一块木板在什么时刻被击碎。 然后直接用主席树维护的话是$O(nlog^2n)$的。 会$T$,而且是一分不给那种。。。 那么换个想法,既然都用主席树了,还二分啥。 可以直接主席树上查区间排名。 似乎也可以整体二分。 复杂度$O(nl 阅读全文
posted @ 2020-03-31 16:29 Lrefrain 阅读(153) 评论(0) 推荐(0)
摘要:好难啊。 T1 数论题。 我一开始以为是什么$burnside$之类的。 看来全是$yy$了。 我们可以把四个排列$A,B,C,D$中的每一个位置都在四张图上连边$(i,P_i)$。 这样会形成若干环。 那么我们要搞得所有步全都是这样的: 从$G_A,G_B,G_C,G_D$中分别选四个圈出来。 设 阅读全文
posted @ 2020-03-25 19:41 Lrefrain 阅读(175) 评论(0) 推荐(0)
摘要:T1 很思维的题。 我们把所有的度数小于3的点全部都缩掉然后分情况给边和去掉的边的答案乘上对应的贡献即可。 用$set$和$bfs$来维护就可以了。 时间复杂度$O(nlogn)$ 代码比较麻烦。 学到一招: $mutable$型:易变型变量。 如果$set$中的元素的大小符定义和这个元素中含有的某 阅读全文
posted @ 2020-03-08 19:58 Lrefrain 阅读(130) 评论(2) 推荐(0)
摘要:T1 把题目中的限制转化为: $x$在儿子的子树中并且$y$不在儿子的子树中。 $y$在儿子的子树中并且$x$不在儿子的子树中。 线段树节点维护$dfs$序在节点区间中的所有的$x$或者$y$。 当然,红蓝各开两个线段树树。 按照$dfs$序区间查询然后暴力扫描$vector$就可以知道要删除哪些点 阅读全文
posted @ 2020-03-02 15:45 Lrefrain 阅读(117) 评论(0) 推荐(0)
摘要:。。。 T1真的我方了。 T1 计算几何。 。。。 不管我用什么方法都$A$不了。 不管是用正弦定理余弦定理还是别的什么。 咕了。 T2 简单的差分+马拉车。 先用马拉车处理出以每个位置为重心的回文串的长度。 然后处理出两个数组,$st[i],ed[i]$。 分别表示以这个点为起点的回文串的终点的总 阅读全文
posted @ 2020-02-09 21:27 Lrefrain 阅读(107) 评论(0) 推荐(0)
摘要:感觉做了个CSP模拟地说。 T1 这个题比较难。 首先发现对于一个数来说 我们贪心的剪掉所有位上最大的哪一个是对的。 具体证明见课件,这里略过。 设:$dp[mx][len][w]$为当前是第len位,len以前的位上的最大值为mx,当前位为w的答案,然后再记录一个余数即可。 转移的时候从高向低剪掉 阅读全文
posted @ 2020-02-01 19:12 Lrefrain 阅读(124) 评论(0) 推荐(0)
摘要:挺懵的。。。 T1 实际上不难。 发现对于同一条边来说。 我们的答案关于我们取得点在这个边上的位置是一个单谷函数,因为两侧取max。 然后直接三分边上所在的位置。 check的时候首先用随便什么最短路处理出每个点之间互相的距离即可求值了。 T2 很棒的二进制分组。 我们把这种满足要求的路径拆成三段$ 阅读全文
posted @ 2020-01-29 18:48 Lrefrain 阅读(125) 评论(0) 推荐(0)
摘要:这场好诡异啊啥也不会。。 T1 很厉害的虚树$dp$。虽然是抄的cf。Upd:~~话说题面里的syx是sigongzi吗?~~全是我在意淫。 考虑化一下式子。 两个点之间的贡献是: $$\varphi(ab)dis(a,b)=\frac{gcd(a,b)\varphi(a)\varphi(b)}{\ 阅读全文
posted @ 2020-01-16 20:15 Lrefrain 阅读(161) 评论(6) 推荐(0)
摘要:T1一看是毒瘤分块根本不想写。 T2部分分都想不到。 T3只会打暴力。 T1 正解是比较有意思的扫描线+线段树维护单调栈。 如果我们把操作序列写出来一定是这个样子的。 $M,AAA,M,AA,MM,A$ 然后如果我们把其中的加法操作全部累和就是: $A_i,M_i,A_j,M_j,A_k,M_k$ 阅读全文
posted @ 2020-01-16 06:37 Lrefrain 阅读(125) 评论(0) 推荐(0)
摘要:网络流专题,总结一下。 一、最大流 一个网络图的最大流量,满足网络流的各种性质的情况下。 1.蜥蜴 简单的拆点,在点之间限流即可,设有$a_i$的高度,从$S$向有蜥蜴的柱子$x$连边,边缘的柱子向$T$连边,距离小于$i,j$。 $$link(S,x,1),link(i_0,i_1,a_i),li 阅读全文
posted @ 2019-12-02 11:23 Lrefrain 阅读(409) 评论(0) 推荐(0)