![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
网络流
ylsoi
这个作者很懒,什么都没留下…
展开
-
[bzoj3175][Tjoi2013]攻击装置——最大独立集
题目大意:给定一个01矩阵,其中你可以在0的位置放置攻击装置。每一个攻击装置(x,y)都可以按照“日”字攻击其周围的 8个位置(x-1,y-2),(x-2,y-1),(x+1,y-2),(x+2,y-1),(x-1,y+2),(x-2,y+1), (x+1,y+2),(x+2,y+1) 求在装置互不攻击的情况下,最多可以放置多少个装置。思路:要求不能互相攻击, 那么我们把可以互相攻击...原创 2018-05-26 14:12:22 · 250 阅读 · 0 评论 -
[bzoj2502]清理雪道——带有下界的最小流
题目大意:给定一个DAG图,一次操作可以沿着DAG图的方向遍历所有能够到达的边,要求把所有的边都遍历完毕,每一条边可以遍历多次,求最小操作次数。思路:乍一看好像是一个模型?为什么感觉和之间做的最小链覆盖很像?然后打了一会之后才发现最小链覆盖是在点上面的,而这一道题目是覆盖边,然后那个模型就没有办法用了。 让我们来科学理性地建立模型,即每一个边都至少要遍历一次。假设从AAA一直走到BB...原创 2018-07-29 08:54:02 · 178 阅读 · 0 评论 -
[网络流24题]魔术球问题——最小路径覆盖
题目大意:假设有n根柱子,现要按下述规则在这n根柱子中依次放入编号为1,2,3,…的球。 (1)每次只能在某根柱子的最上面放球。 (2)在同一根柱子中,任何2个相邻球的编号之和为完全平方数。 试设计一个算法,计算出在n根柱子上最多能放多少个球。例如,在4 根柱子上最多可放11 个球。 对于给定的n,计算在n根柱子上最多能放多少个球。思路:其实我一开始的思路是这样的:把可以放...原创 2018-07-13 11:01:53 · 250 阅读 · 0 评论 -
[ARC080F]Prime Flip——贪心+最大二分匹配
题目大意:有若干个01排成一行,每一个可以选择一个长度为奇质数的区间进行每个数字的翻转,问最小多少次可以将所有的1变成0。思路:考虑到是区间的操作,我们现将这个数组差分一下,即和前面的数不同为1,否则为0,这样区间操作就变成了两个点的操作。 显然我们要每次两个点两个点地改成0。考虑两个点之间的距离和操作数量的关系。如果距离为奇质数的话,就只需要一次操作。如果距离为偶数的就要两...原创 2018-07-16 21:02:03 · 373 阅读 · 0 评论 -
[网络流24题]飞行员配对方案问题——最大二分图匹配
题目大意:裸的最大二分图匹配。思路:同上/*=========================================== * Author : ylsoi * Problem : luogu2756 * Algorithm : Graph Matching or Max Flow * Time : 2018.6.19 * ================...原创 2018-06-19 12:52:48 · 228 阅读 · 0 评论 -
[luogu4142]洞穴遇险——最大费用流
题目大意:有一个n*n的方阵,当第i行第j列满足(i+j)为偶数时,格点权值为0,为奇数时权值为非负整数。你现在有m个L形状的石头,拐角必须要放在权值不为0的位置,这样放置可以抵消掉拐角处的格子的权值,但是有k个格点不可以放置任何石头,求如何让剩下来的权值总和最小。思路:看样子是网络流的题目,但是不会建图,最后发现网络流是用来满足题目限制的,可以多加一个费用流来使得选择的石头覆盖的...原创 2018-06-25 18:15:49 · 591 阅读 · 0 评论 -
[luogu1402]酒店之王——最大流
题目大意:有一个酒店有p种菜,q种房间,n个客人,每个客人都有着自己喜欢的菜和房间(可能会有多种),使一个客人满意当且仅当他的吃上自己喜欢的菜何住上自己喜欢的房间,问酒店老板最大可以使几个人满意。思路:好像只有菜或者房间的情况就是最大二分图匹配,但是这里有三种点,每种点都只可以选一次,且三个点都要对应才可以算得上是一种匹配。 考虑最大流建模,1的流量要流过三个对应的点才代表是一种匹配...原创 2018-06-18 16:18:58 · 287 阅读 · 0 评论 -
[hdu2282]Chocolate——KM
题目大意:n个盒子摆成了一个环形,有的盒子中有糖果,有的则没有糖果。现在要移动糖果使得每个盒子中至多有一个糖果,每次只可以移动一个糖果到相邻盒子,问最小移动次数。思路:不要考虑怎么去移动,发现最后的状态一定是每个盒子中多出来的糖果移动到有一些空的盒子上面去。每一个多出来的糖果都需要被移动,且每个空盒子只能有一个糖果。我们把每一个多出来的糖果作为x方的一个点,每一个空白的盒子作为y方...原创 2018-06-17 14:30:37 · 289 阅读 · 0 评论 -
[bzoj3140][Hnoi2013]消毒——枚举+最大二分图匹配
题目大意:一个长方体中有一些格子需要消毒,消毒一个a∗b∗ca∗b∗ca*b*c的格子需要的费用为min(a,b,c)min(a,b,c)\min(a,b,c)问将所有的格子都消毒的最下费用为多少。思路:先来考虑二维下怎么消毒:先确定计算费用的那一维度,然后剩下的一维就拓展到低,所以最后的形式必定是x∗bx∗bx*b或者a∗xa∗xa*x。对于x∗bx∗bx*b或者a∗xa∗xa*x这...原创 2018-06-16 09:07:14 · 162 阅读 · 0 评论 -
[bzoj1497][NOI2006]最大获利——最大权闭合子图
题目大意:给定n个点和m条边,建造每一个点有花费,建造每一条边有收益,但是一条边的建造必须要两个点都建造好才可以,求最大净收入。思路:把边和点都看成是点,边的的权值为正数,点的权值为负数,同时表示边的点向它的两个端点连都连一条有向边,要求选定一个集合满足这个集合不向外面有出边,求集合的最大权值和,就变成了最大权闭合子图问题,用网络流最小割解决。/*===============...原创 2018-06-23 15:13:47 · 156 阅读 · 0 评论 -
KM算法详解
KM算法:KM是用来求带权二分图的最优匹配的一种算法。原理:我们要求一个二分图的最优匹配,直接求的话肯定是不太好求的,因为每一条边都带有自己的边权,而我们是要求得一个匹配,使得所有的边权加起来值最大。 然后智商超级高的KM算法发明者将这个问题转化为了求一个带权二分图的完备匹配的问题。概念:顶标:每一个点有一个顶标,左边的点的顶标为lx[i]lx[i]lx[i],右边的点的顶标...原创 2018-05-31 22:46:24 · 5503 阅读 · 0 评论 -
[网络流24题]太空飞行计划问题——最大权闭合子图
Description:W 教授正在为国家航天中心计划一系列的太空飞行。每次太空飞行可进行一系列商业性实验而获取利润。现已确定了一个可供选择的实验集合E={E1,E2,…,Em},和进行这些实验需要使用的全部仪器的集合I={I1,I2,…In}。实验Ej需要用到的仪器是I的子集RjÍI。配置仪器Ik的费用为ck美元。实验Ej的赞助商已同意为该实验结果支付pj美元。W教授的任务是找出一个有效算法...原创 2018-06-21 22:09:22 · 242 阅读 · 0 评论 -
[bzoj2744][HEOI2012]朋友圈——最大二分匹配
Description:在很久很久以前,曾经有两个国家和睦相处,无忧无虑的生活着。一年一度的评比大会开始了,作为和平的两国,一个朋友圈数量最多的永远都是最值得他人的尊敬,所以现在就是需要你求朋友圈的最大数目。 两个国家看成是AB两国,现在是两个国家的描述: 1. A国:每个人都有一个友善值,当两个A国人的友善值a、b,如果a xor b mod 2=1, 那么这两个人都是...原创 2018-05-29 14:20:48 · 194 阅读 · 0 评论 -
[bzoj1143][CTSC2008]祭祀river——DAG上最长反链,Dilworth定理,最大二分图匹配,Floyd
题目大意:给定一个DAG图,求最长反链(即一个点集,其中任意点两两不可以相互到达)。思路:一开始我其实是想用求最大独立集的方法去求的。但是并不会(好像也过不去)。 题目所要求的是最长反链,需要用到一些概念和定理。 链:偏序集中任意两个元素可以相互比较(即所有的点都在DAG图的一条链上面)。 反链:偏序集中任意两个元素不可以相互比较(即所有的点都不在同一条DAG图的链上面)。 ...原创 2018-05-27 21:37:14 · 754 阅读 · 0 评论 -
[bzoj4554]游戏——最大二分匹配
Description:在2016年,佳缘姐姐喜欢上了一款游戏,叫做泡泡堂。简单的说,这个游戏就是在一张地图上放上若干个炸弹,看 是否能炸到对手,或者躲开对手的炸弹。在玩游戏的过程中,小H想到了这样一个问题:当给定一张地图,在这张 地图上最多能放上多少个炸弹能使得任意两个炸弹之间不会互相炸到。炸弹能炸到的范围是该炸弹所在的一行和一 列,炸弹的威力可以穿透软石头,但是不能穿透硬石头。给定一...原创 2018-05-27 16:53:53 · 218 阅读 · 0 评论 -
[网络流24题]最小路径覆盖问题——二分图匹配
题目大意:给定有向图G=(V,E)。设P 是G 的一个简单路(顶点不相交)的集合。如果V 中每个顶点恰好在P 的一条路上,则称P是G 的一个路径覆盖。P 中路径可以从V 的任何一个顶点开始,长度也是任意的,特别地,可以为0。思路:既然长度可以为0,那么我们一开始便认为所有的路的长度都为0,那么就有n条路,如果我们每次合并两条路,总的路的条数肯定就会少一条,所以题目就是要找最多的边连...原创 2018-05-27 15:06:09 · 285 阅读 · 0 评论 -
[bzoj][ONTAK2010]Life of the Party——二分图最大匹配关键点
题目大意:求一个二分图的最大匹配关键点(即不论如何都在最大匹配中的点)。思路:最大匹配一般用匈牙利算法来求,即不断重复而找到一条交替链,一条交替链必须要满足两头都是未匹配点才可以成为增广路。 换句话来说,在最大匹配的图中,不可能存在两头都是未匹配的点的交替路。只有可能两边都是匹配点的交替链或者只有一端是未匹配点的交替链。 1.对于两边都已匹配的情况,不论怎么变化关系,匹配数都会...原创 2018-05-27 11:18:09 · 498 阅读 · 0 评论 -
[zoj2314]Reactor Cooling——无源汇有上下界可行流
题目大意:给定一个网络图,每一条有向边有流量的上限和下限,求满足流量守恒下的每一条边的流浪。思路:这是一道经典的无源汇有上下界可行流的板子题,也就是所谓的循环流。一个比较主要的思想就是先满足下界之后再进行调整,调整成满足流量守恒和上界的方案。 1. 首先我们先假设每一条边都达到了流量的下界,这样假设后残余网络的值就变成了(上界-下界),流量守恒的条件是每一个点的入流量等于出流量...原创 2018-07-28 11:23:54 · 167 阅读 · 0 评论