network-flows
cyl纤云弄巧
To Be
展开
-
POJ 1459 网络流初步
题意: 有np个发电站nc个用电器,当然还有中转站,不消耗电量。问最多能用多少电。思路: 标准的网络最大流,s设为101,t设为102,vector模拟邻接链表。 之前一直用Ford-Fulkerson算法写,但是TE,还是用dinic算法吧,重点理解 bfs的作用,其实是提前做了优化,然后在dfs中便省事很多。 更绝的是iter的作用,可以让增广之后的边或者没用用的边跳原创 2017-03-28 20:49:34 · 262 阅读 · 0 评论 -
POJ 3041 (二分匹配->网络最大流)
题意: 行星的毁灭,贝茜有无敌武器可以正行或者整列的灭掉行星 现在她想用最少的次数可以消灭全部的行星。思路: 无敌的建图方式,以行和列为两个顶点建图,如果在某一个 方格有行星,就连线。这样把一个二分匹配问题转化为最大流 了,记得要多思考哦。#include <iostream>#include <cstring>#include <cstdio>#include <原创 2017-03-29 17:33:07 · 321 阅读 · 0 评论 -
文章标题
题意: 给出N个点,M条路,求出从1到N 点的两条最短路的和最短,两条路径不能有重> 合的边。 思路: 按照一般的图论做题思路只能止步于最短路问题,但是这道题可以当作一道最 小费用流来写。从1到N走两次并且不能有重合的话,可以看作容量为2的网络 流问题,而路径的长度可以当作cost,这样就变成了最小流问题,这个做题方 式有两个很好的点: 1. 增广路 2原创 2017-04-09 20:23:59 · 216 阅读 · 0 评论 -
POJ 3281 (网络流)
题意: 有N头牛,F种食物,D种饮料,每种食物和饮料只能提供给一头牛。每头牛有自 己喜欢的饮料和食物。问最多有多少头牛能吃到自己喜欢的饮料和食物。思路: 一般的网络流是求出最大流量,并不能解决有两个选择的题。但是此题可以再 增加一排牛建图,这样可以用网络最大流解决。#include <iostream>#include <cstdio>#include <cstring原创 2017-04-01 22:56:16 · 351 阅读 · 0 评论 -
POJ 1149 (网络流,有趣的建图)
网络流(建图是重点)题意: 有一个卖猪的农夫,他有n个猪圈,但是猪圈的钥匙不在他的手上,有m个顾客,每一个顾客会带一些猪圈的钥匙,每一个顾客都有自己想买猪的数量,当然他所带的钥匙能开启相应的猪圈,从而能买到相应的猪,不过有时猪比他想买的数量多,也有可能少。而农夫有一个权力,就是如果某一个顾客没有买完他开的猪圈里的猪,农夫可以把剩下的猪随意的转移在被这个顾客的开启的猪圈里面。求出农夫最多能卖多少猪原创 2017-07-24 09:49:36 · 378 阅读 · 0 评论 -
ZOJ 1654 网络流解决棋盘问的二分图问题
网络流解决棋盘问的二分图问题题意: 有一个m行n列的土地,上面分成三种情况o代表空地,#代表墙,*代表草地,现在要放机器人在空地上,限制条件是:机器人可以攻击所在的行和列,直到遇到墙,问:最多放几个机器人?思路: 思考一个空地放不放机器人有什么决定?由所在的行和列的其它空地的情况所决定,如果一个空地在一行和一列只有它自己那么这个土地一定需要放机器人,而当它所在的行和列有机器人的时候如果把原创 2017-08-10 09:48:57 · 309 阅读 · 0 评论 -
cf 304 Soldier and Traveling 网络流 + 记录流量情况
网络流 + 记录流量情况题意: n个城市,每个城市有最初的卫兵ai,现在需要转移卫兵,第i个城市需要卫兵bi,每一个城市的卫兵可以转移到临近的城市,也就是距离为1的邻近城市,问是否可以转移到,如果可以输出YES并且输出转移情况。思路: 根据题意和城市卫兵转移的性质,可以判断是网路流问题,但是因为有转移的限制所以需要思考如何建图。根据限制,为了保证从ai状态到bi状态,把城市拆分为ai和原创 2017-08-27 16:49:14 · 308 阅读 · 0 评论 -
POJ 2135 网络流MCMF入门题
网络流MCMF入门题题意: n个点,m条边,现在要从1到n走两次,边只能经过一次,问最短的距离是多少。思路: 转化为网络流问题,对没一条边的最大流量为1,那么用次一次就是0,自然只能走一次。直接可以对f做出限制,相当于模板题,不过要注意的是sol.f和N,M的使用。#include <iostream>#include <stdio.h>#include <cstring>#inc原创 2017-09-09 21:11:22 · 304 阅读 · 0 评论