
网络流
笑对这个世界的志贵
这个作者很懒,什么都没留下…
展开
-
【最大流 模板 Dinic】POJ 1459 Power Network
Problem Description 给你n, np, nc, m。分别代表有n个点,其中np个是发电站,nc个是消费者,剩下n-np-nc个就是中转站。接下来给你m条边,每条边格式(u,v)w。代表u点到v点这条线路最大能够运输w的电。最后给你np个点最大能够输出的电,nc个点最大能够接收的电(格式:(u)w, u这个点能够输出(接收)最大的电,发电站的点是输出,消费者的点是接收)。思路:翻译 2017-08-17 09:55:43 · 307 阅读 · 2 评论 -
【无源汇有上下界可行流】ZOJ - 2314 Reactor Cooling
Step1 Problem: 给你 n 个点,m 条流量下界是 low ,上界是 up 的单向边。问你能否满足每时每刻每条边的流量都在 [low, up] 范围内,如果不满足输出 NO, 满足输出 YES 同时输出每条边的流量。Step2 Ideas: 上下界网络流和平常的网络流不同在于多出了两个点:超级源点 S, 超级汇点 T. 超级源点 S:每条边下界流量都由 S ...翻译 2018-09-15 10:44:52 · 217 阅读 · 2 评论 -
【有源汇有上下界网络流的最小流】HDU - 3157 Crazy Circuits
Step1 Problem: 给你 n 个点,m 条流量下界是 low ,上界是 inf 的单向边。+ 是源点,- 是汇点。 如果存在可行流,求源点到汇点的最小流。 数据范围: 0 <= n <= 50, 1 <= m <= 200, 1 <= low <= 100.Step2 Ideas: 有源汇可行流的流量只是对应一组...翻译 2018-09-16 00:35:26 · 372 阅读 · 0 评论 -
【二分图多重匹配 && 最短路 && (快)最大流】POJ - 2112 Optimal Milking
Problem Description 有C头奶牛,K个挤奶站,每个挤奶器最多服务M头奶牛,奶牛和奶牛、奶牛和挤奶站、挤奶站和挤奶站之间都存在一定的距离。现在问满足所有的奶牛都能够被挤奶器服务到的情况下,行走距离的最远的奶牛的至少要走多远。思路: 求满足情况行走距离最远的那牛,所走的最短距离的问题 网络流 + 二分。题目给了奶牛和奶牛,奶牛和挤奶站,挤奶站和挤奶站之间的距离,我们得求翻译 2017-11-12 20:01:44 · 236 阅读 · 0 评论 -
【二分图多重匹配 && Dinic】POJ - 2289 Jamie's Contact Groups
Problem Description 给你m个组别,每个组别可以只能放特定的人。并最大限度地减少最大组的人数思路: 0-(m-1)代表人,m代表超级源点,n-(n+m)代表组别,n+m+1代表超级汇点。二分 人到超级汇点的流量,最大流求最大匹配,如果最大匹配 = n就减少流量。#include<cstdio>#include<cstring>#include<vector>#in翻译 2017-11-12 19:44:35 · 432 阅读 · 0 评论 -
【最小费最大流 && 概率论】HDU - 5988 Coding Contest
Problem Description 给你n个地点,m条边。接下来n个地点每个地点有num个人,food个人的食物。接下来m行,u地点到v地点,能经过的人数num,经过一个人发生故障的概率w, 第一个人通过的时候,发生故障概率为0。让你尽可能多的人吃到午餐,发生故障的最小概率思路: 发生故障的概率 = 1 - 不发生故障的概率。每条边不发生故障的概率1-w。发生故障概率为0所以不发生故障翻译 2017-10-24 10:17:03 · 343 阅读 · 0 评论 -
【最小费流 && 模板题】POJ - 2195 Going Home
Problem Description 输入n,m,给你一个n*m的矩阵m代表人,H代表房子,每个人得进去一个房子,被进去的房子不能在进。人移动一单位距离需要花费1,问你最少花费思路: 建图,求最大流就好了,找出所有的人的坐标,找出所有的房子的坐标,每个人到所有房子建立一条边,流量为1,费用为距离。超级源点到人建边,流量为1,费用0。房子到超级汇点建边,流量1,费用0。#include<翻译 2017-09-25 19:45:29 · 275 阅读 · 0 评论 -
【最大流 && 点限流】HDU - 2732 Leapin' Lizards
Problem Description 输入T代表有T组测试数据,输入n, d。代表接下来的有两个矩阵n行len列(列是不知道的)。第一个矩阵每个点代表着柱子,对应的值,代表这个柱子的承受能力,青蛙从这里跳走承受能力就会–,直至0就不能承受青蛙了。第二个矩阵L代表青蛙一开始在这里,.代表没有青蛙。问你最少还有多少只青蛙不能跳出边界。每次青蛙能跳的最大距离为d。思路 核心是能想到最大流,紧接翻译 2017-10-03 11:22:31 · 247 阅读 · 0 评论 -
【最大流 && 输出路径】POJ - 3436 ACM Computer Factory
Problem Description 输入p, n代表一个机器由p个部件(0代表没有该部件,1代表有),n代表有n种转换方式。接下来n行每行输入,a[i], in[i][1] … in[i][p], out[i][1]…out[i][p]。例如:15 0 0 0 0 1 0,机器人身上的部件满足0 0 0可以转换成0 1 0,最大可以转换15台。问你最后产生1 1 1的机器人有几翻译 2017-09-20 18:02:08 · 322 阅读 · 0 评论 -
【最大流 && 拆点限流】POJ - 3281 Dining
Problem Dscription 输入 n, f, d分别代表有n头牛,f种食物,d种饮料。接下来n行,每行输入F D f[1]..f[F] d[1]..d[D]。代表牛1有F种喜欢的食物,D种喜欢的饮料,分别是f[1]..f[F], d[1]..d[D]。每种食物只能给一个牛吃,每种饮料也只能给一个牛喝,意思就是给了牛A,就不能给牛B了。问你最多有多少头牛。能吃到食物同时喝到饮料?翻译 2017-09-20 21:12:17 · 342 阅读 · 0 评论 -
【最大流 模板题 EdmondsKarp】HDU - 1532 Drainage Ditches
Problem Description 给你m,n分别代表m条边,n个点。接下来给你m条边,每条边u,v,w。u->v流量的容量为w。有重边思路:模板题,所以给几个模板EdmondsKarp-dfs实现//dfs实现#include<bits/stdc++.h>using namespace std;const int N = 1000;const int inf = 0x3f3f3f翻译 2017-08-16 19:40:31 · 266 阅读 · 4 评论 -
【求最小割边集】UVA - 10480 Sabotage
Problem Description 输入n, m代表有n个点,m条边。接下来m行,每行输入u, v, w代表u到v边权w(双向)。让你求1-2最小割边集思路: 先求最小割(也就是最大流),这时候如果是割边,就代表这条边的流量为0。所以图就被割边分开为两个图包含1的图 和 2包含2的图。找出将他们分开的割边就可以了。跑1,能走到的点都标记一下。那么输入的边的点满足一个被标记一个不被标记就翻译 2017-09-27 20:28:26 · 513 阅读 · 0 评论 -
【dinic && 拆点 && 最小割】HDU - 4289 Control
Problem Description 输入n, m分别代表有n个城市,m条边,输入s,e代表起点,目的点。接下来n行输入w, i行代表城市i的放置检测器所需的价值。接下来m行,输入u,v代表城市u,v之间有边相连接。有恐怖分子要从s-e问你至少需要多少价值来放检测器。思路: 建图,然后跑dinic就可以了,核心就是建图。拆点,建边流量为点权。超级源点和起点建边,流量为无穷。目的点和超级汇翻译 2017-09-27 19:25:42 · 274 阅读 · 0 评论 -
【最大流 && 映射】POJ - 1087 A Plug for UNIX
Problem Description 输入n代表插排上有n个插口。接下来输入n行,每行输入一个字符串代表属于什么类型插口。 输入nn代表有nn个电器。接下来nn行,每行输入两个字符串,代表第一个字符串这个电器 可以 插到第二个字符串这种插口。 输入m代表有m种转换器,转换器个数不限,接下来输入m行,每行输入两个字符串,代表可以将第二个字符串的插口转换为第一个字符串这种插口类型。思翻译 2017-09-25 19:57:05 · 200 阅读 · 0 评论 -
【最小费用流】POJ - 2516 Minimum Cost
Problem Description 本人英语 语文都有点差,参考了这篇大佬博客才知道题目什么意思和样例什么意思http://blog.youkuaiyun.com/lyy289065406/article/details/6742534思路: 我是求每个物品的最小费,然后相加。我觉得核心就是看懂样例,图还是很好建的。店铺拆点限流,流量为店铺的需求量,费用0。供应商拆点限流,流量提供的量,费用0。超翻译 2017-09-25 19:32:43 · 269 阅读 · 0 评论 -
【有源汇有上下界网络流的最大流】ZOJ - 3229 Shoot the Bullet
Step1 Problem 这是一个屌丝给女神拍照的故事。 有 n 天,m 个女神,第 i 个女神 n 天过后至少得有 Gi 张照片。 第 i 天: 屌丝给 C 个女神拍照,这天屌丝最多拍 D 张照片。 对于 id[j] 这个女神,拍照数量 [ low[j], up[j] ]。 如果合法: 输出 n 天后最大拍照数量,同时输出第 i 天 对于 i...翻译 2018-09-15 11:09:15 · 182 阅读 · 0 评论