网络流
文章平均质量分 76
neither_nor
这个作者很懒,什么都没留下…
展开
-
BZOJ4443 [Scoi2015]小凸玩矩阵
二分答案,若x可行,说明能取出n-k+1个小于等于x的数(为什么不是k个呢,因为是k大啊不是k小-_-)判断的话若(i,j)小于等于x,则第i行向第j列连边,然后跑最大流看是否大于等于n-k+1即可#include#include#include#include#include#include#include#include#include#include#includ原创 2016-05-11 17:36:58 · 1262 阅读 · 0 评论 -
BZOJ4554 [Tjoi2016&Heoi2016]游戏
假如没有硬石头的话就是对于每个能放炸弹的点(x,y)第x行连第y列,然后跑二分图最大匹配,有硬石头的话把一个炸弹横向和纵向能炸到的地方算一行和一列,然后和没有硬石头一样#include#include#include#include#include#include#include#include#include#include#include#include#inclu原创 2016-05-12 19:37:38 · 1216 阅读 · 0 评论 -
BZOJ4501 旅行
由于是一个DAG,我们可以拓扑序求f[x]表示以x为起点的最大期望长度,对于点x,用其所有出边向x转移其实就是选择一些出边保留,剩下的删掉,要你最大化这是一个01分数规划问题,我们设上式>L,然后把所有东西移到不等式左边,就得到答案比L大的条件于是我们就要最大化左边,因为题目保证关联的边起点相同,所以每个点之间互不影响,我们发现y被删掉之后x也会被删掉相当于x被选的条件是y被选,所以用最大原创 2016-06-15 22:12:38 · 934 阅读 · 0 评论 -
BZOJ1189 [HNOI2007]紧急疏散evacuate
考虑二分答案然后判断,判断用网络流,S连每个人流量1,每个门按时间拆点,每个时间连T流量1,每个时间连下一个时间流量INF,然后每个人如果能在当前二分的时间内到达某个门,那么这个人连门的他到达的时间然后跑最大流看是否满流来判断即可#include#include#include#include#include#include#include#include#include原创 2016-08-29 15:57:41 · 1004 阅读 · 0 评论 -
BZOJ2400 Spoj 839 Optimal Marks
mlgb的我调了一下午,结果是网络流bfs的时候忘初始化队列了首先一看位运算,每一位是独立的,然后每一位的问题就是把每个点划分为黑集或白集,两个点之间若有边且所属集合不一样就会产生一个较高一级别的代价,若一个点被划分为黑集则会产生较低一级别的代价,建图跑最小割就行了要开long long #include#include#include#include#include#inc原创 2016-09-12 16:49:32 · 466 阅读 · 0 评论 -
BZOJ3275 Number
偶数之间gcd不为1,显然奇数^2加奇数^2不等于偶数^2,因为奇数可以写成2x+1的形式,所以奇数方模4余1,两个加一起余2,而偶数方模4余0二分图,跑最小割即可#include#include#include#include#include#include#include#include#include#include#include#include#inc原创 2017-01-03 17:34:24 · 590 阅读 · 0 评论 -
BZOJ3158 千钧一发
n^2建图,拆点,不能一起选的连INF,S和T连每个点流量B,跑最小割#include#include#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define MAXN 100原创 2016-06-13 14:46:18 · 874 阅读 · 0 评论 -
BZOJ3511 土地划分
一眼最小割考虑划为S集代表A国,划为T集代表B国建图:S连每个点流量VA,每个点连T流量VB对于每条边,两个端点点之间连双向边流量EC新建一个点X,S连X流量EA,X连两个端点流量INF再新建一个点Y,两个端点连Y流量INF,Y连T流量EB认为1号点VA=INF,VB=0n号点VA=0,VB=INF#include#include#include#includ原创 2017-01-04 15:57:42 · 818 阅读 · 0 评论 -
BZOJ4873 [Shoi2017]寿司餐厅
也是傻逼题,就是想不出来考虑最大权闭合子图,对于长度大于1的区间,区间[i,j]的前置条件就是[i+1,j],[i,j-1]对于单点区间[i,i],另其贡献减去a[i],并且前置条件是权值为m*a[i]*a[i]的点跑最小割就行了#include#include#include#include#include#include#include#include#incl原创 2017-04-24 14:56:17 · 1441 阅读 · 0 评论