果然还是不会建图… 设\\( i \\)到\\( j \\)有通路,代价为\\( w[i][j] \\),瞬移到i代价为\\( a[i] \\),瞬移到i代价为\\( a[j] \\),逗号前是流量。 因为每个点只能经过一次,所以流量限制为1,注意到从s开始很难保证出发点不同,所以但是又有联通条件, ...
分类:
其他好文 时间:
2018-01-03 22:46:09
阅读次数:
335
其实不用拆点,对于每个人我们假装他是\\( s[i]+1 \\)个点,可以由他向T点分别连\\( s[i]+1 \\)条边,容量为\\( t[i][j] t[i][j 1]\\),由S点向所有产品i连容量为c[i]的边,由所有产品向能制造它的人连容量为inf的边。 因为是最小费用最大流,\\( w[ ...
分类:
其他好文 时间:
2018-01-03 21:11:22
阅读次数:
202
【网络流24题】餐巾计划问题(最小费用最大流) 题面 "COGS" 洛谷上的数据范围更大,而且要开longlong 题解 餐巾的来源分为两种: ①新买的 ②旧的拿去洗 所以,两种情况分别建图 先考虑第一种 因为新买餐巾没有任何限制,并且随时可以买 所以直接从源点向每一天连边,容量为INF,费用为餐巾 ...
分类:
其他好文 时间:
2018-01-02 11:33:59
阅读次数:
106
问题:n(假设最大流为n)辆卡车要运送物品,从A地到B地。由于每条路段都有不同的路费要缴纳,每条路能容纳的车的数量有限制,最小费用最大流问题指如何分配卡车的出发路径可以达到费用最低,物品又能全部送到。 例子 ...
分类:
其他好文 时间:
2017-12-28 11:47:19
阅读次数:
123
每次选代价最小的流增广 cpp include include include include using namespace std; struct Edge{ int too, nxt, val, cst; }edge[100005]; int n, m, ss, tt, maxFlow, mi ...
分类:
其他好文 时间:
2017-12-21 20:05:54
阅读次数:
117
求解方法基本与裸的最大流相同 不同之处在于增广路变为最短路,边需要记录费用,注:反向边的费用为相反数 并且需要在每次找到最短路后统计费用 ...
分类:
其他好文 时间:
2017-12-20 03:38:48
阅读次数:
151
https://www.luogu.org/problemnew/show/3381 ...
分类:
其他好文 时间:
2017-12-12 23:48:30
阅读次数:
183
bzoj1711: [Usaco2007 Open]Dining吃饭 最大流bzoj3993: [SDOI2015]星际战争 二分+最大流bzoj1797: [Ahoi2009]Mincut 最小割 最小割定理bzoj4873: [Shoi2017]寿司餐厅 最大权闭合子图bzoj1565: [NO ...
分类:
其他好文 时间:
2017-12-12 21:18:23
阅读次数:
186
"原题" 给定一个N M的地图,地图上有若干个人和房子,且人与房子的数量一致。人每移动一格需花费1(即单位费用=单位距离),一间房子只能入住一个人。现在要求所有的人都入住,求最小费用。 把每个人和每个房子连费用为距离,容量为1的边就可以了。 cpp include include include i ...
分类:
其他好文 时间:
2017-12-04 17:41:24
阅读次数:
228
"原题" 给一个N N的方阵,从[1,1]到[n,n]走K次,走过每个方格加上上面的数,然后这个格上面的数变为0。求可取得的最大的值。 要求最大值,所以把边权全为负跑最小费用即可。因为只有第一次经过该点的时候会得到价值,所以我们将一个点拆为两个,连一条容量为1费用为负权的边和一条容量为k 1费用为0 ...
分类:
其他好文 时间:
2017-12-04 17:37:25
阅读次数:
142