
网络流/费用流
文章平均质量分 67
网络流及费用流问题
小衣同学
No Saturday , no Sunday , no holiday .
展开
-
2018年长沙理工大学第十三届程序设计竞赛 K. zzq的离散数学教室2(dilworth定理+有向图可相交路径覆盖 dinic版)
(这里的≤不是传统意义上的小于等于,可以理解为从y到x的一条有向边),记做:x≤y。同时这些关系也具有传递性,例如,如果x≤y并且y≤z,那么可以得到x≤z。左侧s->i可以看成是选了一个起点,x->y+n如果不相交的话就是选了一个终点,y+n->y相当于允许退回去,不把y当终点,后面还可以选其他点当终点。x->y+n的边的权值,因为也要过重选的流量,所以也置INF。T组样例,n<=1e5,sumn<=3e5,m<=2n。2. 将原来的有向边x->y,看做是x->y+n。1. 将i拆成i和i+n两个点,原创 2024-04-12 04:05:40 · 530 阅读 · 0 评论 -
Atcoder TUPC 2023(東北大学プログラミングコンテスト 2023)P. Sub Brackets(dinic 二分图最大独立集)
出现这种情况时,要求x[li-1]<=x[lj-1]<=x[ri]且x[li-1]=x[ri],否则,如果上一个字符是左括号,则当前是右括号,上一个字符是右括号,则当前是左括号。需要取的位置,如果存在要取的li,就放左括号,如果存在要取的ri,就放右括号。定下来括号串,满足最多的限制数,使得每个限制对应的区间是一个合法的括号串。长为n(n<=500)的尚未确定的括号串,m(m<=500)个限制条件。考虑把(看成+1,)看成-1,x[i]为括号串的前缀和数组,li和lj奇偶性不同,li<lj<=ri<rj。原创 2024-03-15 21:52:22 · 680 阅读 · 0 评论 -
AtCoder Beginner Contest 332 G. Not Too Many Balls(最大流转最小割 dp)
由j*k>B[j],解得k>=B[j]/j,所以枚举k的时候,每个点从S换到T的操作只会发生一次。3. 左侧集合P与右侧集合非Q之间的边,左侧属于s的点,右侧属于t的点,断开左右点之间的边。并且划给S集合的每个点贡献是j*k,划给T集合的每个点贡献是B[j],1. 超级源点s与集合非P之间的边,即左侧属于t的点,断开与s的边。2. 集合Q与超级汇点t之间的边,即右侧属于s的点,断开与t的边。可以任意划分,将一部分划给S集合,另一部分划给T集合,所以无需断开左侧属于t的点和右侧属于s的点之间的边,原创 2023-12-18 02:58:49 · 518 阅读 · 0 评论 -
hdu7298 Coin(网络流+按时间拆点)
不操作的时候,就可以按时间正序,从时间前面的点通过ai的流量连到时间后面的点。最终,统计k个朋友最后时刻的点的总流量,这k个点,连超级汇点,流量ai。第i个人,在任意时刻,都最多只能有ai(1<=ai<=3e3)个硬币。游戏的时候,AB之间根据当前时间各新增一个点,连流量1的无向边,t(t<=10)组样例,每次给n(n<=3e3)个人,其中k(k<=n)个是小F的朋友,依次用点号的形式给出。初始时,每个人都有一个硬币,超级源点s连每个人,流量1。游戏进行m(m<=3e3)局,每局给出A、B两个人,原创 2023-07-23 22:40:23 · 250 阅读 · 0 评论 -
二分图博弈(知识总结+例题)
算法学习笔记(74): 二分图博弈 - 知乎。原创 2023-07-10 12:48:38 · 909 阅读 · 0 评论 -
AtCoder Beginner Contest 263 G.Erasing Prime Pairs(二分图最大匹配-网络流)
LINE Verda Programming Contest(AtCoder Beginner Contest 263)D.Erasing Prime Pairs(二分图最大匹配-网络流)原创 2022-11-27 14:05:10 · 500 阅读 · 0 评论 -
Codeforces Round #829 (Div. 1) D.The Beach(最短路/流量为1的费用流)
Codeforces Round #829 (Div. 1) D.The Beach(最短路/流量为1的费用流)原创 2022-10-24 03:23:55 · 572 阅读 · 0 评论 -
Caddi Programming Contest 2021(AtCoder Beginner Contest 193) F.Zebraness(最小割)
题目一个n*n(n<=100)的网格图,只由'B'、'W'、'?'三种字符构成,'?'表示你填'B'或'W'都可以现在要确定填?的方案,使得这张网格图中相邻的异色对对数最大对于(i,j),认为它和(i+1,j)、(i-1,j)、(i,j-1)、(i,j+1)相邻思路来源官方题解:https://atcoder.jp/contests/abc193/editorial/817题解最大化异色对对数,即最小化同色对对数x,则答案为2*n(n-1)-x最小化一个值,且网格图,且原创 2021-02-28 13:26:51 · 426 阅读 · 1 评论 -
2018 Benelux Algorithm Programming Contest (BAPC 18) I.In Case of an Invasion, Please...(网络流+最短路)
题目思路来源http://blog.leanote.com/post/icontofig/e6b30008ad99题解怎么会不觉得自己sb呢,本来是很裸的网络流题预处理最短路,每个点到避难所的距离挑战原题的思路,首先二分最小时间t,每个居民只能去小于等于t的避难所,于是就变成一个匹配问题,类似地跑网络流,左源右汇,中间两层,一层是实际的点,一层是避难所但是1e5个点,乘上二分的复杂度会t注意到避难所只有10个,所以可以把到避难所连通性相同的点合并到一起,这样实原创 2020-11-28 23:36:18 · 239 阅读 · 0 评论 -
hdu6735 Escape(网络流)
题目在第一行若干个位置有a个机器人,彼此位置不重叠,第i个坐标是(0,ai),开始所有机器人都朝下最后一行若干位置有b个出口,彼此位置不重叠,第j个坐标是(n+1,bj)它们其中的区域,(1,1)到(n,m)是一个迷宫,有些位置是障碍,用‘1’表示,不能走,也不能放装置,有些位置是空地,可以允许同时多个机器人在上经过,也可以在上放一个转向装置,装置分四种,分别记为NE,SW,SE,NW,其中EWSN分别是东西南北的缩写,以NE为例,即如图所示,你可以从这个装置北侧向南走进原创 2020-10-07 22:34:54 · 221 阅读 · 0 评论 -
poj3422 Kaka‘s Matrix Travels(k次方格取数 最大费用最大流)
题目n*n(n<=50)的矩阵a[],a[i][j]表示(i,j)的苹果数(a[i][j]<=1e3),每次你可以从a[1][1]出发,只能向右或向下走一格,获得这个格子的苹果,苹果被取走后会消失,你可以走k(0<=k<=10)次,问最多能取得多少苹果思路来源栗子巨巨题解如果k<=2,这是很经典的dp问题,方格取数,但k一大就不好做了,由于是点有权值,很自然地想到拆点,把每个点拆成一个入点和一个出点,点权转化成拆的两个点之间的边权,作原创 2020-09-18 17:35:53 · 203 阅读 · 0 评论 -
poj3680 Intervals(最大费用流/区间k覆盖)
题目T组样例,每次给出n(n<=200)个区间,第i个区间覆盖了[ai,bi](1<=ai<bi<=1e5),并带来wi(1<=wi<=1e5)的收益,你需要从中选出一些区间,使得数轴上所有端点都仅被不超过k个区间覆盖求能获得的最大收益The first line of each test case contains two integers,NandK(1 ≤K≤N≤ 200).The nextNline each contai...原创 2020-06-30 19:08:18 · 350 阅读 · 0 评论 -
牛客2018 牛客国庆集训派对Day6 A.Birthday(最小费用流 板子题)
题目宇扬在蛋糕上插了n(1<=n<=50)支蜡烛,并把蛋糕分为m(2<=m<=50)个区域。因为某种原因,他必须把第i根蜡烛插在第ai个区域或第bi个区域。区域之间是不相交的。宇扬在一个区域内同时摆放x支蜡烛就要花费的时间。布置蛋糕所用的总时间是他在每个区域花的时间的和,求布置蛋糕最少时间。思路来源UESTC_Vici代码题解其余部分都是流量=1,代价=0这么连,区域连汇点的时候,考虑最后如果通过了一条边,代价为1,通过两条边,代价为4,以原创 2020-06-30 15:22:25 · 249 阅读 · 0 评论 -
“东信杯”广西大学第一届程序设计竞赛(同步赛)F-出装方案(二分图最大匹配/状压dp/最大费用最大流)
题目思路来源https://ac.nowcoder.com/acm/contest/view-submission?submissionId=37522548(MCMF)https://ac.nowcoder.com/acm/contest/view-submission?submissionId=37514575(状压dp)心得本来就是一个二分图最大权匹配的KM板子题...原创 2018-11-26 00:03:23 · 1403 阅读 · 0 评论 -
poj3281 Dining(网络流/拆点)
题目N种奶牛,F种食物,D种饮料第i只奶牛有fi种喜欢的食物,di种喜欢的饮料思路来源《挑战程序竞赛》题解s->食物->奶牛1->奶牛2->饮料->t把奶牛拆成两个点,两个点之间连1的流量,代表只有一个食物可以经过奶牛这个点同时也就只会有一的流量流进食物这个点然后就网络流就好了,注意每次建正向边之后立刻建反向边有向图反向...原创 2019-03-18 18:09:59 · 237 阅读 · 0 评论 -
hdu6214 Smallest Minimum Cut(网络流-最小割的最小边集)
题目给定一张点数n(n<=200)和边数m(m<=1000)的图求这张图最小割时,割掉的那些边的边数最少是多少题解其实自己之前这题做过,学最大权闭合子图的时候学过然后这有个方法就是把边权放大,比如w=10000w+1,然后再跑最小割,原来相同最小割的边集再求最小割的时候,会在边权放大之后有边数上的差别,所以就是加的少的跑出来是新图的最小割,也是我...原创 2019-03-15 19:14:41 · 310 阅读 · 0 评论 -
院科技文化节高级组 C.随时随地, 脉动回来(最小/最大费用流裸题)
思路来源舟亢学长题解裸最小费用最大流(最短路)裸最大费用最大流(负权最短路再取反)心得本来比赛的时候有时间敲 预估自己30min结果赛后补题敲了1h tm还WA了好几发请学长debug结果是数组开小了GG我怎么这么菜啊还是对费用流理解不深啊弧优化+SLF优化的SPFA是不可能被卡掉的啊这样看来,手敲板子的学弟还真是遥不可及啊……不禁让...原创 2018-12-04 18:10:29 · 248 阅读 · 0 评论