网络流
文章平均质量分 84
thy_asdf
我也不知道说什么...
展开
-
bzoj4177: Mike的农场
题面: Mike有一个农场,这个农场n个牲畜围栏,现在他想在每个牲畜围栏中养一只动物,每只动物可以是牛或羊,并且每个牲畜围栏中的饲养条件都不同,其中第i个牲畜围栏中的动物长大后,每只牛可以卖a[i]元,每只羊可以卖b[i]元,为了防止牛羊之间相互影响,Mike找到了m条规律,每条规律给出一个三元组(i, j, k)表示如果第i个围栏和第j个围栏养的是不同的动物,那么Mike就需要花费k的代价请原创 2015-07-14 11:34:46 · 741 阅读 · 0 评论 -
bzoj3894: 文理分科
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=3894思路:令S为学文,T为学理对于额外的收入,新加一个点也可以用二元组建图来解决还是这个图,x表示一个学生,与S连通表示学文,与T连通表示学理y表示新加的点,用来计算同时学理的额外收益,与S连通表示不要额外收益,与T连通表示要额外收益先算出总收益,在用最小割减去即原创 2016-01-21 14:21:57 · 727 阅读 · 0 评论 -
bzoj2039: [2009国家集训队]employ人员雇佣
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=2039思路:还是二元组建图先求出总收益,再解方程建图求最小割题意有些坑c+d=w[i]+w[j]a+b=2*E[i][j]a+d+f=A[j]+3*E[i][j]b+c+e=A[i]+3*E[i][j]然后就没有然后了#inclu原创 2016-01-21 11:02:54 · 835 阅读 · 0 评论 -
bzoj2127: happiness
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=2127思路:二元组建图要求的就是i选A就有A[i]收益,选B就有B[i]收益,j相同,两两之间如果同时选A就有A[i,j]的额外收入,同时选B就有B[i,j]的额外收入先把收益加起来,在减掉最小损失即可最小损失就可以用上面的构图,解出方程赋相应的边权求最小割即可原创 2016-01-21 10:57:18 · 647 阅读 · 0 评论 -
bzoj3661: Hungry Rabbit
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=3661思路:网络流,但这不是标算,bzoj为了大概是为了让网络流过才把时限开到100s建两个源点,S向S‘连容量为K的边,这个是为了限制总流量的每天的每只兔子拆成两个点,之间连1的边进行点容量限制,表示这只兔子今天只算一只(不限制后面会出问题)每只兔子向下一天的自己连1的边原创 2016-01-21 10:45:37 · 543 阅读 · 0 评论 -
bzoj1449: [JSOI2009]球队收益&&bzoj2597: [Wc2007]剪刀石头布
剪刀石头布就难想一些首先是补集转化总共有C(n,3)个三元组原创 2016-01-21 10:23:21 · 707 阅读 · 0 评论 -
bzoj1927: [Sdoi2010]星际竞速
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1927思路:拆点拆成x和x'S向x'连边,容量为1,费用为定位时间S向x连边,容量为1,费用为0对于原图的边u->vu向v‘连边,容量为1,费用为时间x’向T连边,容量为1,费用为0;跑一遍费用流即可#include#include#include原创 2016-01-21 09:33:29 · 933 阅读 · 0 评论 -
bzoj3504: [Cqoi2014]危桥
传送门:http://http://www.lydsy.com/JudgeOnline/problem.php?id=3504思路:证明见此http://blog.csdn.net/wzq_QwQ/article/details/46546977#include#include#include#includeconst int maxn=110,maxm=10010,inf=1原创 2016-01-19 09:32:13 · 728 阅读 · 0 评论 -
bzoj1066: [SCOI2007]蜥蜴
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1066思路:很显然的点容量限制,那就拆点,从一个点向另一个点连点容量限制的边S向有蜥蜴的点连1的边,两两可达的点连边,可以出去的就向会连边#include#include#include#include#includeconst int dx[]={0,0,1,-1};原创 2016-01-19 09:30:02 · 302 阅读 · 0 评论 -
bzoj2756: [SCOI2012]奇怪的游戏
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=2756思路:先黑白染色,设白格个数为cnt0,和为sum0,黑格个数为cnt1,和为sum1,假设最后所有点都变成了x那么如果cnt0!=cnt1就是格子数为奇数时cnt0*x-sum0=cnt1*x-sum1x=(sum0-sum1)/(cnt0-cnt1)格子为偶数时x原创 2016-01-19 09:25:07 · 991 阅读 · 0 评论 -
bzoj1305: [CQOI2009]dance跳舞
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1305思路:拆点,把每个人拆成喜欢和不喜欢,源向男生的喜欢的点连inf边,喜欢向不喜欢连K的边,如果男生和女生互相喜欢,就从喜欢点向喜欢点连边,否则从不喜欢点向不喜欢点连边,然后女生的喜欢点向汇连边,女生的不喜欢点向喜欢点连K的边跑最大流即可#include#include#i原创 2016-01-19 08:51:28 · 862 阅读 · 0 评论 -
bzoj1570: [JSOI2008]Blue Mary的旅行
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1570思路:把每天当作一层,一层包含n个点,每层向下一层在原图中有边相连的点连边,表示一天能走一条边,每天的n点向汇连边枚举天数,每次加一层,满流即输出答案#include#include#include#includeconst int maxn=10010,inf=1e原创 2016-01-19 08:40:48 · 677 阅读 · 0 评论 -
bzoj1189: [HNOI2007]紧急疏散evacuate
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1189思路:一种简单的网络流建图:预处理两点间距离从S向每个空地连1的边,每个空地向它在二分的时间内能到的出口连边,出口在向汇连T的边这也是很多题解的做法但这是错的...当很多人距离门很远时,他们就可能在时间快到时堆在门口出不去,这种建图就忽略了这一点所原创 2016-01-17 20:45:25 · 348 阅读 · 0 评论 -
bzoj3144: [Hnoi2013]切糕
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=3141第一道想出来的hnoi题,还难得地一遍A...思路:老方法,先只考虑一个限制条件,即每个竖轴选一个点,求最小和;最小,就考虑最小割。这个还是比较好想的,每根竖轴按从上到下的顺序,连出从S->T一条路径,把点权附到边上最小割就相当于每条链选一条边切断,求和最小的原创 2015-12-29 20:19:42 · 2648 阅读 · 0 评论 -
hdu contest day1 1007 Tricks Device
传送门:http://acm.hdu.edu.cn/contests/contest_showproblem.php?cid=589&pid=1007思路:预处理出最短路,跑最小割lll的代码:#include#define maxn 2100#define maxm 180000#define inf 0x7fffffff#define min(a,b) ((a)>(b)?(原创 2015-07-22 09:51:57 · 322 阅读 · 0 评论 -
bzoj1311: 最优压缩
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1311思路:很明显的二元组建图还是这个图,设与S相连表示设为V0,与T相连表示设为v1列方程,设有两个相邻的点ij,注意一组ij只能算一次,所以两个1/2就并成1了a+b=|A[i]-v0|+|A[j]-v0|c+d=|A[i]-v1|+|A[j]-v1|a+f+d原创 2016-01-21 16:06:42 · 386 阅读 · 0 评论