一名苦逼的OIer,想成为ACMer

Iowa_Battleship

随笔分类 -  网络流

洛谷1004 方格取数
摘要:"原题链接" ~~继续写水题中~~ $DP$水题。 不过费用流解更灵活,可以解决$k$条路。 所以就写了个费用流。 cpp include include using namespace std; const int N = 1e4 + 10; int fi[N], ne[N], da[N], di 阅读全文

posted @ 2018-12-06 20:48 Iowa_Battleship 阅读(134) 评论(0) 推荐(0)

洛谷1345 [USACO5.4]奶牛的电信Telecowmunication
摘要:"原题链接" 最小割点数转换成最小割边数的模板题(不过这数据好小)。 每个点拆成两个点,连一条容量为$1$的边,原图的边容量定为$+\infty$,然后跑最大流即可。 这里用的是$Dinic$。 阅读全文

posted @ 2018-11-05 20:31 Iowa_Battleship 阅读(132) 评论(0) 推荐(0)

POJ3422或洛谷2045 Kaka's Matrix Travels
摘要:"POJ原题链接" "洛谷原题链接" 很裸的费用流。 将每个点$x$拆成$x_1,x_2$,并从$x_1$向$x_2$连一条容量为$1$,费用为该点的权值的边,以及一条容量为$+\infty$,费用为$0$的边。 设$x$下方的点为$y$,右边的点为$z$(如果存在),则从$x_2$向$y_1,z_ 阅读全文

posted @ 2018-09-18 20:08 Iowa_Battleship 阅读(117) 评论(0) 推荐(0)

POJ1966 Cable TV Network
摘要:"原题链接" 割去点使得无向图不连通,和最小割相似。 我们可以将点转化成边,这样就能跑最小割了。 枚举每两个不能直接到达的点$S,T$,使得删去一些点(除去这两个点)使得这两个点不连通(若两点能直接到达显然无解),然后我们按下面的方法建立新图: 1. 将每个点$x$,拆成两个点$x_1,x_2$,对 阅读全文

posted @ 2018-09-18 14:01 Iowa_Battleship 阅读(138) 评论(0) 推荐(0)

CH#17C 舞动的夜晚
摘要:"原题链接" 即求二分图的不可行边数量,因为不保证是完备匹配,所以需要通过网络流求出任意一组最大匹配,并建立新图判断。 建新图:对于跑完网络流的图上已经匹配的边,建立反边;对于没有匹配的边,建立正边(图只改变边的方向,别的结构不变)。 有结论: 1. 必须边的判定条件为:$(x,y)$的流量为$1$ 阅读全文

posted @ 2018-09-16 18:08 Iowa_Battleship 阅读(643) 评论(0) 推荐(0)

导航