网络流_最大流
wang2147483647
这个作者很懒,什么都没留下…
展开
-
Hdu 4888 Redraw Beautiful Drawings(最大流+方案唯一判断)
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=4888 思路:设置一源点、汇点。将每行看做一点,从源点连边,容量为改行元素和;将每列看做一点,从该点向汇点连边,容量为该列元素和。每行每列连边,容量为k。求最大流,若满流,则存在解。存在解时,若残量网络中存在环,则流量可绕环一圈而不改变最大流,则此时存在多解。 #include #include原创 2016-11-10 20:36:33 · 585 阅读 · 0 评论 -
UVALive 3645 Objective: Berlin(最大流)
题目地址:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1646 思路:拆点,将航线看做点。设一源点与汇点。对于每个航线i,将其拆为两点,i和i',连一条容量为最大客容量的边;对于所有起点为出发点的航线j,连一条源点到j的容量为INF的边原创 2016-10-30 21:34:24 · 462 阅读 · 0 评论 -
UVA 11082 Matrix Decompressing(最大流)
题目地址:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2023 思路:首先求出每一行与每一列的和,对于每一行,想象一水流与m个格子,水总量为一行和,则水分别流入m个格子中。因此,每一列的和即为每一行的水流流入的每个格子中的水流总量。所以,设置一源点s原创 2017-02-10 16:50:11 · 373 阅读 · 0 评论 -
UVA 753 A Plug for UNIX(最大流)
题目地址: 思路:设置源点s、汇点t,若设备i能经过转接到插座j,则连一条边,容量为INF(转接可使用无限个),从s向每个设备连一条边,容量为1,从每个插座向t连一条边,容量为1。求最大流即为可连接的设备数,也即当前二分图的最大匹配数。 #include #include #include #include #include #include #include #define debu usi原创 2017-02-10 15:50:19 · 262 阅读 · 0 评论 -
UVA Euler Circuit(混合图欧拉回路)
题目地址:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1676 思路:若将无向边拆成两条有向边,则意味着经过该边正反各一次,所以不能通过拆边解决。 (1)对于一有向图,若存在欧拉回路,则满足任意点的入度等于出度。而对于每一条无向边,无论方向如何改变原创 2017-02-13 19:33:27 · 412 阅读 · 0 评论 -
Uva 12125 March of the Penguins(最大流)
题目地址 思路: 1.每个点都有一次数限制。拆点:将每个点i拆成i和i',连容量为m[i]的边,代表只能m[i]的流量通过。 2.若i和j可到达,连边i'---->j,容量为INF。 3.由于最终到达地点未知,枚举终点i,判断最大流是否等于企鹅总数即可。 #include #include #include #include #include #include #include #def原创 2017-08-22 09:28:30 · 482 阅读 · 0 评论 -
Sgu 438 The Glorious Karlutka River(动态流)
题目地址:http://acm.sgu.ru/problem.php?contest=0&problem=438 思路: 1.由于不同时刻,两点的流量不同,故不能在一张图中求解。 2.由于任意时刻,人可在中间节点停留,故费用流无法解决此题。 3.给定所有流量限制,求最短经过时间。可通过枚举时间,将中间节点按时间拆点为(i,t)(即在时间t时的点i)。 (1)节点存在容量限制,可通过拆点解原创 2017-10-19 22:04:59 · 389 阅读 · 0 评论 -
Uva 10983 Buy one, get the rest free(二分+最大流)
题目地址:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1924 思路: 1.二分所需花费cost,每次只选择不大于cost的航班。 2.设源点S,汇点T。对于每个城市,表示为二元组(i,t),代表第t天处于第i个城市。从S到每一(i,0)连边,容原创 2017-10-20 14:15:08 · 609 阅读 · 0 评论