网络流水题题单

都是大水题 很多题都是口胡 而且题解写的并不好...
[SCOI2007]蜥蜴
把一个点拆成两个点 中间连上点权的边
luoguP2711 小行星
可以分成三个部,x部,y部与z部,做最小割
x与s相连,w=1;z与t相连,w=1,以y部为中间部连接x与z w=inf
y部的点要拆点 连w=1边
luoguP2045 方格取数加强版
S,T连(1,1) (n,n) 容量K费用0
方格上每个点拆成入点和出点
它们之间连两条边,一条容量1费用点权(表示最多获得一次收益),另一条容量inf费用0(表示可以经过无数次)
每个点向下面和右面连容量inf费用0的边 然后最大费用最大流
luoguP3410 拍照
最大权闭合子图建图:
如果选A则必须选B 则A向B连(infty)
选A收益为正 则S向A连此收益的边 否则向T连边
最终答案等于所有物品正收益之和减最小割
这道题直接按题意连边就行
[JLOI2010]冠军调查
S连向同意的人,T连向不同意的人,朋友之间连w=1双向边
当S和T还连通时则必然存在一条路径,证明有人产生矛盾
直接最小割
[SDOI2013]费用流
所有的单位费用应该被分配在流量最大的边上
二分 判断是否存在最大流 会有实数流量
(不过不是很清楚网络流跑实数流量复杂度会怎样)
bzoj1001 狼抓兔子
看这个 http://blog.sina.com.cn/s/blog_60707c0f01011fnn.html
我是一点平面图的常识都没有
https://blog.csdn.net/weixin_42068627/article/details/80788974 这个实现应该简单一点
[POI2005]KOS-Dicing
可以二分 也可以从1到m枚举答案,每次将所有连向t的边流量加1
[NOI2009]植物大战僵尸
但是如果两棵植物互相保护形成环 需要把环消去
不在环上的边反向做最大权闭合子图
[CQOI2014]危桥
S连到a1和b1 (w=2*a_n),T连到a2和b2 (w=2*b_n),相当于一次把两遍走了
看看最大流是不是((2*a_n+2*b_n))
还要S连到a1和b2 ,T连到a2和b1,再判一下,防止上一次是a1流到b2、b1流到a2
[CQOI2009]跳舞
二分答案 考虑判定mid是否可行
把每个人拆成喜欢和不喜欢两个点
从S连向男生喜欢,w=mid,喜欢向不喜欢连边,w=K
男生喜欢连向女生喜欢 男生不喜欢连向女生不喜欢
[国家集训队]happiness
比较经典的最小割题 但我忘得一干二净
每个点分别向S和T连文/理收益
新建同时选文的点 S向该点连收益的边 该点向对应的座位连inf边 其他同理
[HNOI2013]切糕
一个很实用的建图方法 以下基本复制xyz32768大佬的题解
切点看作割边 新建一层(R+1)
S向(1)层所有点连边 新建一层(R+1) (R+1)层所有点向T连边
((i,j,k))((i,j,k+1))连一条容量为((i,j,k))的不和谐值的边。
这样从((i,j,1))((i,j,R+1))的路径上需要且只需要割掉一条边。
对于在同一平面上距离为(1)的两个点对((i,j),(x,y)) 只要限制(f(i,j)-f(x,y)leq D)即可
(因为如果有(f(i,j)-f(x,y)<-D),那么一定有(f(x,y)-f(i,j)>D),不符合条件)
建图其实就是让(f(i,j)-f(x,y)>D)时,(S)仍然可以到达(T)
对于在同一平面上距离为(1)的两个点对((i,j),(x,y)),对于任何一个(D+1leq kleq R+1),由((i,j,k))((x,y,k-D))连一条容量为(infty)的边。
求最小割即可
好像2020联合省选d1t3用这个trick可以得到不少分。。。
[ZJOI2010]网络扩容
先做完第一问 留下一个残量网络
对于原图的每个边 加一条费用为扩容费用 容量inf的边
(K)的限制只要再建一个源点往(1)连容量(K)费用(0)的边
[CQOI2012]交换棋子
写不动 copy别人题解
https://www.luogu.com.cn/blog/_post/89491
https://www.luogu.com.cn/blog/dedicatus545/solution-p3159
[NOI2008]志愿者招募
又是一个很nb的思路
建立天数个点 连成一条链 链上每条边容量(inf-a_i) 链的首尾与S,T连inf边
每个志愿者连从s到t+1 容量inf费用为招募费用的边
类似的还有loj6079
[SCOI2007]修车
考虑一个工人 维修序列是(A_1,A_2,cdots,A_s)
(A_i)的贡献为(A_i imes (s-i+1))
倒过来考虑 贡献为(A imes i)
每个工人拆成(N)个点 第(i)个点表示修倒数第(i)辆车
车向所有工人节点连流量1费用为代价的边就行了
[NOI2012]美食节
上一道题的升级版
如果直接用上一道题的方法 设spfa复杂度线性 复杂度为(O(nmp^2)) 不能通过
但是有很多边是没有用到的 可以一边增广一边加边
初始边数(O(nm)) 每次增广加(O(n))条边 总复杂度(O(np^2+nmp)) 可以通过
soj966
感觉挺巧妙的 但好像就我不会
https://www.cnblogs.com/misaka10047/p/13235972.html
loj6068
nb的棋盘模型
对于每一行或列被#隔开的每一段拿出来当做一个点,然后对于每个点从其所属的行连通块向列连通块连边
(inom{x+1}{2}-inom{x}{2}=x) 所以从S向行联通块,列联通块向T连容量1费用(0,1,2,cdots,该联通块大小-1)的边
每次跑一个流量就行
[WC2007]剪刀石头布
我对竞赛图一无所知
考虑三个点不构成环的条件 必然一点入度2 一点出度2 一点入度出度都为1
考虑入度 每次入度2都会失去一个三元环
设点(i)入度为(deg_i) (i)会使得整个图失去(inom{deg_i}{2})个环
讲每个未定向的边视为点 类似上一题
s向每个边对应的点连边 边对应的点向原图上两端的点连流量1边(会让一个点入度加一) 原图点向t连费用递增的边
[BZOJ3774]最优选择
懒得写了。。。 还是抄别人的吧 不过感觉挺重要的
黑白染色 在最小割中 串联表示或 并联表示且
https://www.cnblogs.com/CQzhangyu/p/8469613.html
[CQOI2017]老C的方块
四个颜色。。。
https://www.luogu.com.cn/blog/ShadowassIIXVIIIIV/solution-p3756
zhengruioi 1209
神奇的一批。。 还是去找官方题解吧
[六省联考2017]寿司餐厅
最大权闭合子图
如果选择了(d_{i,j}) 则必须选择(d_{i+1,j})(d_{i,j-1})
如果选择了(d_{i,i}) 则必须付出(a_i)(这个直接(d_{i,i}-=a_i即可))和(m imes a_i^2)(这个可以视为一个物品)代价
[八省联考2018]劈配
据说很多人想到了解法但并不是每个人都能A掉。。
https://www.luogu.com.cn/blog/user37070/solution-p4382
[NOI2015]小园丁与老司机
关于上下界网络流可以看这个 https://www.cnblogs.com/mlystdcall/p/6734852.html
https://www.cnblogs.com/misaka10047/p/13278421.html
[SDOI2016]数字配对
https://www.luogu.com.cn/blog/user29936/solution-p4068
[WF2011]Chips Challenge
http://wyfcyx.is-programmer.com/posts/199813.html
[TJOI2013]循环格
入度出度都为1
https://www.luogu.com.cn/blog/PYblog/solution-p3965
[TopCoder SRM570 900]CurvyonRails
https://ksmeow.moe/cr_tc12432_sol/
[JSOI2009]球队收益
度数限制经典nb题
重点是假设每场比赛双方都是输的 然后可以费用递增模型
https://www.luogu.com.cn/blog/hbyer/solution-p4307
[SDOI2010]星际竞速
基本复制George1123题解
想象有 (n+1) 个人接力跑 ,分别在点 (s)(1sim n)上 ,开始时接力棒在 (s) 那个人手上。
这时候他拿着接力棒开始跑,到达某个星球后停止,把接力棒交给该星球上的选手,并打卡结束比赛。
该选手又出发,循环此过程。每个星球只可以打卡一次,必须打卡。路上走过的路程相当于费用。
最后的最大流最小费用就是答案,而原问题与此等效。
建图:每个点拆成左右两边的点
s向左侧点流量1费用0(相当于等待的人)
s向右侧点流量1费用(a_i)
右侧点向t流量1费用0
左边向右边连原图的边
注意只有DAG该建图才能成立
这种模型大概是右边点用于打卡保证所有点被经过恰好一次 左边用于出发
【网络流24题】餐巾计划
https://www.luogu.com.cn/blog/user31955/solution-p1251
和星际竞速同属签到模型 右侧点用于签到检验是否满足要求 左侧点用于出发
[ZJOI2011]营救皮卡丘
https://dra.blog.luogu.org/solution-p4542
仍然是签到模型
CF280D
https://www.luogu.com.cn/blog/user18895/solution-cf280d
【NEERC2016】Mole Tunnels
https://www.luogu.com.cn/blog/duyi/solution-p6122
[noi2017] 蔬菜
好像从模拟费用流角度考虑反而更复杂。。
很神仙的贪心
https://www.luogu.com.cn/blog/ShadowassIIXVIIIIV/solution-p3826
[noi2019] 序列
咕了。。 现在还不会做 以后再写吧 估计写起来很恶心
最大密度子图
一个图的密度是图上的边的数量除以点数。我们现在想要知道一张图的密度最大的子图。
0/1分数规划 二分答案后 相当于边权1 点权-mid
相当于选了边必须选两侧的点 最大权闭合子图
POJ1149 PIGS
调换猪当成猪寄存在顾客处 然后该顾客可以把猪发放给与它的猪圈集合有交的人
顾客向T连w=购买量的边
对于每个猪圈 S向第一个打开它的顾客连边
对于每个猪圈 每个包含它顾客向下一个包含它顾客连inf边
CF510E
由于(a_i ge 2) 和为质数必定一奇一偶
奇数和偶数分成二分图的左右部
如果一个数匹配了两个数 必然能形成环
到S和T的容量设为2即可
bzoj3698
https://www.cnblogs.com/GXZlegend/p/7072443.html
https://www.cnblogs.com/CQzhangyu/p/7071417.html
CF103E
https://www.luogu.com.cn/blog/Marser/solution-cf103e
[CTSC1999]家园 / 星际转移问题
https://www.luogu.com.cn/blog/litble-blog/solution-p2754
POI2010 Bridges
https://www.luogu.com.cn/blog/hbxblog/solution-p3511

CEOI2008 order


TJOI2015 线性代数

bzoj2132
https://www.cnblogs.com/CHerish_OI/p/8126243.html
SRM577 BoardPainting

SRM594 FoxAndGo3
https://blog.csdn.net/zxyoi_dreamer/article/details/100783736
我现在不会最基础的知识:https://blog.csdn.net/wzazzy/article/details/83478869
SRM558 SurroundingGame
https://www.cnblogs.com/Y-E-T-I/p/8619496.html
bzoj3218 A + B Problem
https://www.cnblogs.com/zhoushuyu/p/9139559.html
SRM627 LaserTowersDiv1
https://blog.csdn.net/zxyoi_dreamer/article/details/100772097
bzoj4213
http://hzwer.com/7476.html

zjoi2011 最小割

这个黑科技好像叫最小割树
chessboard


还有很多东西没学 线性规划一点都不懂
感觉这个不错,但还没看:https://blog.csdn.net/qq_31918005/article/details/81268671?utm_source=blogxgwz8

原文地址:https://www.cnblogs.com/misaka10047/p/13260112.html