网络流
beginendzrq
主要负责给各位大佬端茶送水...
展开
-
poj 2125 【最小割】
题目大意:一个有向无环图,删除一个点的全部入边代价为 aia_i,删除一个点的全部出边代价为 bib_i,求删除所有边的最小代价将一个点 i 拆成两个点 i,i’ 建图: S -> i,流量 bib_i i -> j’,流量 infinf i’ -> T,流量 aia_i 然后跑最小割QAQ如果是表格,也可以拆成行列像这样做…如果要求以次数最小为前提,可以在权值前面加上一个很大的数…#in原创 2016-05-10 19:30:22 · 928 阅读 · 3 评论 -
Tsinsen A1320 Painting 【最大权匹配】【树形DP】
题目大意:给一棵 n 个点的树,给每条边染色为 ai(1<=ai<n)a_i (1<= a_i < n),代价为 aia_i,要求每一个点连出的边颜色不同,求最小代价及方案考虑每棵子树对整体的影响只有它父边的颜色,可以树形DP 设F[i][j]F[i][j]表示以 i 点为根的子树,父边颜色为 j 的最小代价 但因为要求颜色不同,所以转移的过程是一个匹配问题 建图:左边是子节点,右边为颜色,权原创 2016-05-11 14:47:13 · 580 阅读 · 0 评论 -
bzoj 1565 植物大战僵尸【最大权闭合子图】
最大权闭合子图: 选得一个集合 V,满足 V 内的任意一个点的出边指向的点也在 V 中,且 V 的权值和最大建图: S→x:w[x] (w[x]>0)x→T:−w[x] (w[x]<0)v→u:∞S \rightarrow x :w[x] \ \ (w[x] > 0) \\x \rightarrow T : -w[x] \ \ (w[x] < 0) \\v \rightarrow u原创 2016-06-28 10:31:45 · 1716 阅读 · 0 评论 -
bzoj 1797 最小割【最小割】【tarjan】
题目大意:给定一张图,对于每条边,询问 1:是否存在于某个最小割集中,2:是否存在于所有最小割集中对残余网络做一次 tarjan对于一条满流边,若 id[s] != id[t],则能存在于某个最小割集中 若又有 id[s] == id[S] && id[t] == id[T] 则一定能存在于最小割集中#include<iostream>#include<algorithm>#include<c原创 2016-06-28 13:20:57 · 379 阅读 · 0 评论 -
bzoj 1937 最小生成树【费用流】
题目大意:给定一张无向图和一颗生成树,求使这棵树变成最小生成树的最小代价我们知道最优情况下如果要改变,树上边只会减小,非树边只会增大。对于每条非树边 j 两端点间的树边 i,就有 wj+dj>=wi−diw_j + d_j >= w_i - d_i,就是 di+dj>=wi−wjd_i + d_j >= w_i - w_j。那么建图就是: S -> i (1,0) i -> j (1,wi−wj原创 2016-06-30 14:28:29 · 1098 阅读 · 0 评论 -
bzoj 2039 人员雇佣【最小割】
题目大意:n 个人,每个人选择的代价为 cost,若两个人 i,j 同时选中则有贡献 E[i,j] 否则只有一个人被选则有 E[i,j] 的代价,求最大收益做不来…orz 建图: ·S -> i ∑nk=1E[\sum_{k = 1}^n E[ ·i <-> j 2E[i,j] ·i -> T cost[i]#include<iostream>#include<cstring>#incl原创 2016-06-30 16:59:03 · 291 阅读 · 0 评论