看错题了以为多组询问吓得不行…… 其实还挺好想的,就是数据范围一点都不网络流。把U作为s,V作为t,以最小生成树为例,(U,V,L)要在最小生成树上,就要求所有边权比L小的边不能连通(U,V)所在的联通块。这样一来模型就很显然了,就是对所有边权 include include include inc ...
分类:
其他好文 时间:
2018-02-12 15:17:05
阅读次数:
139
[Luogu 3973] TJOI2015 线性代数 "" 这竟然是一道最小割模型。 据说是最大权闭合子图。 先把矩阵式子推出来。 然后,套路建模就好。 cpp include include include include using namespace std; const int MAXP=5 ...
分类:
其他好文 时间:
2018-02-11 22:36:36
阅读次数:
181
先把矩阵式子化简 原式=∑i=1n∑j=1nA[i]?B[i][j]?A[j]?∑i=1nA[i]?C[i] 因此我们发现问题转化为选取一个点所获收益是B[i][j],代价是C[i][j] 这是一个最小割问题。 先把答案记做所有b的和。 将边按照s——>p[i][j](b[i][j]) p[i][j ...
分类:
其他好文 时间:
2018-02-11 19:56:16
阅读次数:
144
题目链接 "bzoj 1934: [Shoi2007]Vote 善意的投票" 题解 睡觉作为源点,不睡作为汇点 对于一个人违背自己的意愿,连向与自己意愿相反的源\汇,容量为1 对于朋友意见相反,在朋友之间连容量为2的双向边,切得时候双向边使得该边漫流 求一边最小割就是答案 代码 c++ includ ...
分类:
其他好文 时间:
2018-02-10 21:56:03
阅读次数:
218
同方格取数问题:https://www.cnblogs.com/lokiii/p/8430720.html 记得把障碍点去掉,不连边也不计入sum cpp include include include include using namespace std; const int N=100005, ...
分类:
其他好文 时间:
2018-02-08 13:45:08
阅读次数:
195
因为都是正整数,所以当然取得越多越好。先把所有点权加起来,黑白染色后,s向所有黑点连流量为点权的边,所有白点向t连流量为点权的边,然后黑点向相邻的四个白点连流量为inf的边,表示不可割,这样一来,对于一条链上的s u v t,只能割掉u的点权或者v的点权,那么最小割就是用最小的代价是st分开,也就是 ...
分类:
其他好文 时间:
2018-02-08 12:18:42
阅读次数:
184
3158: 千钧一发 题目:传送门 题解: 这是一道很好的题啊...极力推荐 细看题目:要求一个最大价值,那么我们可以转换成求损失的价值最小 那很明显就是最小割的经典题目啊?! 但是这里两个子集的分化并不明显...GG 耐心一点,从题目的要求再入手: 对于第二个要求,如果两点的a值都为偶数,那么肯定 ...
分类:
其他好文 时间:
2018-02-08 00:31:00
阅读次数:
157
这题感觉就是最大权闭合子图嘛。 但是是最小割?我懒得写blog 先去看看一个sb的blog http://www.cnblogs.com/CHerish_OI/p/8126311.html 然后主要要想一想为啥要用sum-ans 经过sb CHerish_OI也就是蓝蓝的讲解,终于懂了。 这个图是用 ...
分类:
其他好文 时间:
2018-02-07 15:09:02
阅读次数:
176
题意就是求最小割… 然后我们有这么一个定理(最大流-最小割定理 ): 任何一个网络图的最小割中边的容量之和等于图的最大流。 (下面直接简称为最大流和最小割) 证明: 如果最大流>最小割,那把这些割边删去之后依然能找到一条增广路使得源点和汇点联通,和这些边是最小割矛盾。故最大流$\leq$最小割。 而 ...
分类:
其他好文 时间:
2018-02-07 00:43:09
阅读次数:
150
如果只会用最小割做这道题那就太菜辣 引入 来自某学长 平面图:在平面上边不相交的图(边可以绕着画) 那么平面图的边与边就围成了许多个区域(这与你画图的方式有关) 定义对偶图:把相邻的两个区域连上边,形成的图 两个~~可能~~正确的东西: 对偶图$\in$平面图 平面图的对偶图的对偶图是它自己 知道这 ...
分类:
其他好文 时间:
2018-02-05 20:00:05
阅读次数:
198