网络流
文章平均质量分 79
include-LSS
我想了很久还是不知道这里要写什么 ...
展开
-
poj 2914(无向图最小割Stoer-Wagner算法)
题意 : 无向图,每对顶点间可能有多条边,问最少删除多少条边才能将图分为两个联通子图一个无向连通网络,去掉一个边集可以使其变成两个连通分量则这个边集就是割集;最小割集当然就权和最小的割集。可以用最小切割最大流定理:1.min=MAXINT,确定一个源点2.枚举汇点3.计算最大流,并确定当前源汇的最小割集,若比min小更新min原创 2014-10-21 19:40:33 · 677 阅读 · 0 评论 -
poj 2987(最大权闭合图+求最少割边)
【题意】:公司要炒一些员工的鱿鱼, 若A被炒了, 那A的所有下属也会跟着被炒, 下属关系具有传递性, 且可能构成环, 即A是B的下属, B又间接是A的下属, 炒掉每个人公司会得到一笔收益, 收益可能为负, 问在收益最大的前提下, 最少要炒掉哪些人, 以及最大收益是多少. 【题解】:标准的最大权闭合图,构图:从源点s向每个正收益点连边,容量为收益;从每个负收益点向汇点t连边,容量为收益的相反原创 2014-09-12 20:56:04 · 424 阅读 · 0 评论 -
poj 3422(拆点费用流)
题意:有个方阵,每个格子里都有一个非负数,从左上角走到右下角,每次走一步,只能往右或往下走,经过的数字拿走 每次都找可以拿到数字和最大的路径走,走k次,求最大和原创 2014-09-22 20:19:07 · 440 阅读 · 0 评论 -
poj 3498(枚举人数+最大流) 满满都是泪
题意 :原创 2014-09-10 22:17:10 · 649 阅读 · 0 评论 -
poj 2699(二分+最大流)较难
题意:有n(n如果这个竞赛者胜利的次数最多或这个竞赛者打败了所有胜利次数比他多的竞赛者,那么这个竞赛者就是最强的。其中每两个人有且仅进行一场比赛。)做法大概就是二分枚举最强者的个数(数量比较少,就直接枚举了。),越胜场多的成为强者的几率越高。所以枚举最强的k个人就是胜场最多的k个人若a,b(a,b都属于枚举的最强者的集合)之间的比赛为c,且a的胜场数小于b的胜场数,则a向c原创 2014-09-09 21:25:02 · 464 阅读 · 0 评论 -
poj 2516 (多次费用流)
题意:有N个客户,M个仓库,和K种货物。已知每个客户需要每种货物的数量,每个仓库存储每种货物的数量,每个仓库运输各种货物去各个客户的单位费用。判断所有的仓库能否满足所有客户的需求,如果可以,求出最少的运输总费用。最小费用最大流。先判断是否每种货物的存储总量都足够,足够的话,对每一种货物进行一次最小费用最大流求出完成这种货物运输的最小总费用,所有的总费用相加就是结果了原创 2014-09-19 20:01:45 · 389 阅读 · 0 评论 -
poj 3228 (二分+最大流)dinic
题意 : 有n个原创 2014-09-06 17:45:27 · 408 阅读 · 0 评论 -
poj 2455(二分+最大流)
题意:有N个地点,FJ 想从1走到N ,每条边只能走一遍 走T次 求在满足条件下,求最大的边最小。题意有点绕,简而言之就是要你找出T条每条边都边不重复的路径,使得的这T条路径中的每段路径的最大值最小,求出这个最大值。首先找出T条边不重复的路径,可以想到用增光路来搞,把每条边的权值赋值为1,那整个网络的最大流就是边不重复的路径的数目了,因为每条边的流量为1,最多只能在一条增广路上,所以最终由多少原创 2014-09-06 14:14:06 · 442 阅读 · 0 评论 -
POJ 2195 (费用流/最小权匹配)
[题目大意]:给出n*m的地图,由几个H(房子)和m(人),求每个人都走到一个房子的最少需要的总步数。n,m原创 2014-09-18 18:54:58 · 496 阅读 · 0 评论 -
poj 2391 (二分+最大流) 有点坑
题意:有n个牛棚,现在每个牛棚都有ai牛,下雨的时候每一个牛棚可以放bi只牛才不会淋湿。把牛放入另一个牛棚需要一些时间。。问最短要多少时间。能把牛放到其他的牛盆里,牛才不会被淋湿。。原创 2014-09-05 22:03:16 · 396 阅读 · 0 评论 -
hdu 4888 Redraw Beautiful Drawings(最大流)
题意 :给一个n*m的矩阵,每个位置有一个0~K的数,给出每一行及每一列的数的和,判断是否有解,并输出方案。原创 2014-07-30 12:09:23 · 506 阅读 · 0 评论 -
poj 2289 (二分+最大流)
3 2John 0 1Rose 1Mary 15 4ACM 1 2 3ICPC 0 1Asian 0 2 3Regional 1 2ShangHai 0 20 0题意:Jamie有很多联系人,但是很不方便管理,他想把这些联系人分成组,已知这些联系人可以被分到哪个组中去,而且要求每个组的联系人上限最小,即有一整数k,使每个组的联系人数都不大于k,问这个原创 2014-07-18 15:33:06 · 551 阅读 · 0 评论 -
poj 3281 Dining(最大流)
题意:有N头牛,F种食物,D种饮料,每头牛有自己喜欢的食物和饮料,每种食物/饮料只能被一头牛享用,每头牛只能享用一种饮料和一种食物,求最后能有几头牛享用到自己喜欢的食物或饮料。解法:很容易想到建图方法,食物放左边,饮料放右边,牛放中间,然后按照给定的关系连边,但这里需要对牛拆点,如果不拆的话,比如有这样的两条链,s->食物1->牛1->饮料1->t,s->食物2->牛原创 2014-05-11 20:20:43 · 480 阅读 · 0 评论 -
poj 1459 (一不小心就超时的网络流 + Dinic)
题目大意:总共有n个节点,其中有发电站np个、用户nc个和调度器n-np-nc个三种节点,每个发电站有一个最大发电量,每个用户有个最大接受电量,现在有m条有向边,边有一个最大的流量代表,最多可以流出这么多电,现在从发电站发电到用户,问最多可以发多少电解题思路:将发电站看成源点,用户看成汇点,这样求最大流就可以了,不过因为有多个源点和汇点,所以加一个超级源点指向所有的发电站,流量为无限大,加一个原创 2014-04-24 12:14:50 · 585 阅读 · 0 评论 -
poj 3680 (费用流拆点+离散+神奇的构图)
题目:给定N个区间(ai,bi)权值wi,选一些区间,求最大权和且每个点最多覆盖K次原创 2014-09-23 20:19:28 · 458 阅读 · 0 评论 -
poj 3762(费用流+区间K覆盖)
题目大意:给你n个时间段,每个时间段都有一个权值,每个时间段只能选择一次,其中一天时间点能选择互不重叠的时间段,最多选择k天。问怎样选择使得总权值和最大。原创 2014-09-26 19:22:53 · 832 阅读 · 0 评论 -
poj 3686(费用流+拆很多点)
题目大意:有n个订单m个车间,每个车间均可以单独完成任何一个订单。每个车间完成不同订单的时间是不同的。不会出现两个车间完成同一个订单的情况。给出每个订单在某个车间完成所用的时间。问订单完成的最小平均时间是多少。原创 2014-09-24 21:16:44 · 569 阅读 · 0 评论 -
poj 3921 (控制费用的 最小割)
题意: 有N个据点..敌人要从1号据点往N号据点去..有些据点间存在直接路径..敌人走一条路径都为一个单位时间...而咱可以摧毁一个据点..这么做就让与这个据点相连的路径全部作废..问为了防止敌人在K单位时间内到达N点..至少要摧毁几个据点..注意的是1、N号据点是不能摧毁的...并且1与N没有直接的路径..建图:原创 2014-10-19 20:17:56 · 620 阅读 · 0 评论 -
poj 3308 最小点权覆盖(对数乘积)
火星人侵略地球,他们意图登陆破坏某个地区的兵器工厂。据探子回报,火星人登陆的地区为n*m大小的地域,而且每一个火星人的着陆点坐标已知。火星人很强悍,只要有一个火星人着陆后能够幸存,他必定能毁坏这片区域的全部兵工厂。为了防止这种情况发生,必须保证在火星人着陆的一瞬间把他们全部同时杀死。现在防卫队有一个激光枪,开一枪就能把 在同一行(或同一列)着陆的火星人全部杀死。但是这种激光枪的使用原创 2014-10-17 09:47:48 · 567 阅读 · 0 评论 -
poj 3084(最小割)
大意就是,有一些房间,初始时某些房间之间有一些门,并且这些门是打开的,也就是可以来回走动的,但是这些门是确切属于某个房间的,也就是说如果要锁门,则只有在那个房间里才能锁,这跟现实很符合啊,不然随便个人站你家外边把你门给锁了是什么情况。 现在一些房间里有一些恐怖分子,要搞破坏,但是我们现在有个房间很重要,不能被他们破坏,这就需要锁一部分的门,不让恐怖分子有可趁之机,那么最少需要锁多个门呢?很原创 2014-10-16 13:47:02 · 511 阅读 · 0 评论 -
poj 3469 最小割
题意:现在有n个任务,两个机器A和B,每个任务要么在A上完成,要么在B上完成,而且知道每个任务在A和B机器上完成所需要的费用。然后再给m行,每行a,b,w三个数字。表示如果a任务和b任务不在同一个机器上工作的话,需要额外花费w。现在要求出完成所有任务最小的花费是多少。原创 2014-10-17 19:30:59 · 478 阅读 · 0 评论 -
poj 3204 最小割(关键割边)
题意: 给出有n 个节点的网络,和m条单向边,知道了每条边的容量,问哪些边满足增加该边的容量后,能使得从起点到终点的总流量增加(只能修改一条边!)。注意一点,在一条流路中只能修改一条,好像s->1->2->t,假设每条边的容量都是2,那么最大流的流路只有一条,但是这条流路中,要想增大一条边的容量而使整个网络的最大流增加是不行的,一定要把所有边容量都增大,这与题意不符,所以这个case输出是原创 2014-10-16 19:08:18 · 560 阅读 · 0 评论 -
poj 2125 二分图最小点权覆盖
给你一个有向图,每个点有两种操作,一种是删除它的所有入边,一种是删除它的所有出边,并且每个删除都有一个花费,让你求最小花费使得这个图删除所有的边。先看一下下面几个定义:点覆盖集:是无向图的一个点集,使得该图中所有边都至少有一个端点在该集合内。最小点覆盖集:在无向图中,点数最少的点覆盖集。最小点权覆盖集:是在带点权无向图中,点权之和最小的点覆盖集。此题无疑原创 2014-10-04 16:39:46 · 621 阅读 · 0 评论 -
zoj 3229 (有上下届的最大流)
题意:一个屌丝给m个女神拍照,计划拍照n天,每一天屌丝给给定的C个女神拍照,每天拍照数不能超过D张,而且给每个女神i拍照有数量限制[Li,Ri],对于每个女神n天的拍照总和不能少于Gi,如果有解求屌丝最多能拍多少张照,并求每天给对应女神拍多少张照;否则输出-1。分析:增设一源点st,汇点sd,st到第i天连一条上界为Di下界为0的边,每个女神到汇点连一条下界为Gi上界为oo原创 2014-10-29 20:51:53 · 503 阅读 · 0 评论 -
poj 1966(最小割集求顶点连通度)
题目大意:给你一个无向图,这个图有一个安全系数f,f的定义是:1.f为n,如果不管删除多少个顶点,剩下的图仍然是连通的2.f为删除最少的顶点数,使得剩下的图不连通给你一个图,求出f解题思路:题目给出的目标很明显,转换成图,那么f就是无向图中的连通度吗,或者说,是求无向图中的最小割点集。首先将每个点拆成两个点每个点可以表示成i与i+n那么有向边的容量为1原创 2014-10-03 19:30:16 · 625 阅读 · 0 评论 -
POJ 1815 (最小割的点集)
题意 : 从s到t的连通图中,最少删除多少个点,可以使s和t不连通,也就是求一个最小点割集原创 2014-10-02 21:17:07 · 492 阅读 · 0 评论 -
POJ 2396 (有上下界的最大流)
题意:现在有一个n*m的方阵,方阵里面的数字未知,但是我们知道如下约束条件: 1> 每一行的数字的和 2> 每一列的数字的和 3> 某些格子有特殊的大小约束,用大于号,小于号和等于号表示 求解是否存在在满足所有的约束的条件下用正数来填充该方阵的方案,若有,输出填充后的方阵,否则输出IMPOSSIBLE.原创 2014-10-09 21:02:26 · 562 阅读 · 0 评论 -
有上下界的网络流
1.无汇源有上下界最大流以前写的最大流默认的下界为0,而这里的下界却不为0,所以我们要进行再构造让每条边的下界为0,这样做是为了方便处理。对于每根管子有一个上界容量up和一个下界容量low,我们让这根管子的容量下界变为0,上界为up-low。可是这样做了的话流量就不守恒了,为了再次满足流量守恒,即每个节点"入流=出流”,我们增设一个超级源点st和一个超级终点sd。我们开设一个数组du[]来记录原创 2014-10-10 19:14:28 · 497 阅读 · 0 评论 -
poj 2175(费用流判负环+消环)
题意:给出n栋房子位置和每栋房子里面的人数,m个避难所位置和每个避难所可容纳人数。然后给出一个方案,判断该方案是否最优,如果不是求出一个更优的方案。思路:很容易想到用最小费用流求出最优时间,在与原方案花费时间对比判断原方案是否最优。但是这种方法会超时的。 放弃该思路。看看题目没要求要最优解,而是得到一个更优的解,那么如果在原图中能够找到一个总费用为负的回路的话,那就该解不是最优解,把该负环原创 2014-09-17 20:18:02 · 734 阅读 · 0 评论 -
poj 2135 (费用流) 水题
题意:FJ有N个农场,M条路,FJ要领朋友游玩,从1走到N,再回到1,不走重复路,每条路长度不一样,问最短路长为多少(无向边)s到1连边,容量2,费用0 ;n到汇点t连边,容量2,费用0 ;其余边容量1,费用为距离 ;跑一边费用流 ;原创 2014-09-17 19:07:03 · 410 阅读 · 0 评论 -
poj 1637 判断混合图是否存在欧拉回路
题意: 就是对有无向边和有向边的混合图,判断存不存在欧拉回路。 参考下面的解释: 【混合图】混合图(既有有向边又有无向边的图)中欧拉环、欧拉路径的判定需要借助网络流!(1)欧拉环的判定:一开始当然是判断原图的基图是否连通,若不连通则一定不存在欧拉环或欧拉路径(不考虑度数为0的点)。其实,难点在于图中的无向边,需要对所有的无向边定向(指定一个方向,使之变为有向原创 2014-09-16 19:02:36 · 660 阅读 · 0 评论 -
poj 1149 (一时不明显的建图+最大流)
题目大意:迈克有个养猪场,养猪场里有M个猪圈,每个猪圈都上了锁。迈克没有钥匙,而要买猪的顾客一个接一个来到养猪场,每个顾客有一些猪圈的钥匙,要买一定数量的猪。当每个顾客来时,将有钥匙的猪圈全部打开,从中挑出一些买走,然后迈克可以重新分配这些猪圈里面的猪。当顾客离开后,门又被锁上。问迈克最多可以卖多少猪。分析 :(1)将顾客看做是除了源点和汇点以外的结点,并且另外设两个结点:源点原创 2014-04-22 20:36:32 · 522 阅读 · 0 评论 -
hdu 4780区域赛 (费用流)
A new candy factory opens in pku-town. The factory import M machines to produce high quality candies. These machines are numbered from 1 to M. There are N candies need to be produced. These candie原创 2014-05-07 21:12:47 · 626 阅读 · 0 评论 -
hdu 1553 Going Home (最大权匹配/费用流)
题目大意:给你一个N行M列的矩阵,其中“.”代表空地,“H”代表房子,“m”代表人,其中有n个房子和n个人。现在要求每个人进入一间房子,且人走一步需要支付1美元。求最小需要花费多少美元才能让所有人都进入到房子中(每个人只能进入一间房子,每个房子只能容纳一个人)。解题思路:这道题其实就是二分图最优匹配的变形而已。因为要求的其实是最小权值之和。而KM算法求的是最大权值之和。把权值改原创 2013-10-25 14:20:17 · 1089 阅读 · 0 评论 -
骑士共存问题 (二分图最大匹配 转换 网络最大流 )
在一个n*n个方格的国际象棋棋盘上,马(骑士)可以攻击的棋盘方格如图所示。棋盘上某些方格设置了障碍,骑士不得进入。 对于给定的n*n个方格的国际象棋棋盘和障碍标志,计算棋盘上最多可以放置多少个骑士,使得它们彼此互不攻击。输入描述 Input Description第一行有2 个正整数n 和m (1分别表示棋盘的大小和障碍数。接下来的m 行原创 2013-08-18 21:00:34 · 1225 阅读 · 0 评论 -
HDU 3572 (最大流构图)
题目意思:给出 N 件任务和 M台机器, 这N件任务都一个限制: 必须在 [S,E] 之间完成, 而且完成的时间不能超过 P.一台机器每天只能做意见任务, 不过庆幸的是: 任务是可以拆分的, 比如一件任务要3天完成, 那么你就可以将呀拆分成3份. 现在问: 在所有机器慢负荷运转的情况下, 如何分配这些任务使得在最后的期限时, 所有任务都能完成.解题 :仔细分原创 2013-09-25 14:18:39 · 613 阅读 · 0 评论 -
hdu 2883 (最大流)
【题意】有一个烤肉机,每次可以同时烤M份肉。有N个顾客,第i个顾客li时刻到达,ri时刻走, 点了ai份肉,每份肉需要bi的时间烤,客人的每份肉可以分开烤,比如一份肉需要t时间烤,如果平均分出t份,那么能在1个时间内烤完。问能否满足所有顾客的需求。【分析】烤肉机相当于每个单位时间段都在工作,可以一直往里面加肉,每个单位时间段最多可以容下M份肉。对于每个客人,其需求需要在(l原创 2013-09-26 20:24:48 · 667 阅读 · 0 评论 -
hdu 3081 (最大流)
题意: n个男孩n个女孩,女孩选男孩,给出一些女孩喜欢的男孩,并且这些女孩的朋友喜欢的男孩,她也可以喜欢;问这些女孩在不重复挑选男孩过家家的情况下,能挑选几轮(每个女孩不能挑选之前挑选过的男孩),n个女孩都挑好男朋友,算一轮完;建图 : 源点s=0;汇点t=2*n+1;1,2,3...n女孩;n+1,n+2,,,,,,2*n男原创 2013-09-27 21:32:12 · 531 阅读 · 0 评论 -
hdu 3277 (二分+并查+最大流)
题意 : 和3081差不多;只是多了一个条件,每个女生可以选最多k个不喜欢的男生匹配 ;思路:将每个女孩u分为u1,u2,若u喜欢v则加一条u1到v的边 ,容量为1 ,否则加一条u2到v的边,容量为1 令加u1到u2的容量为k的边;其他同3081一样; 源点到每个女生连容量为x的边,男生到汇点连容量为x的边, x是枚举的轮数;注意,二分枚举的时候,不能冲新建图,这样毁TLE原创 2013-09-29 20:53:17 · 616 阅读 · 0 评论 -
hdu 3416 最短路+最大流
题意:求源点到汇点有多少条完全不同的最短路;每条边只能走一次。题解:先SPFA求出源点到其他点的最短路,再用处于最短路上的边建图,容量1;#include #include #include using namespace std;const int inf=0x3f3f3f3f;struct rec{ int u,v,w,link;}edge[300005];struct r原创 2013-10-07 21:19:08 · 546 阅读 · 0 评论