网络流
文章平均质量分 79
wjw1340
这个作者很懒,什么都没留下…
展开
-
POJ2516 Minimum Cost【网络流】
题意:有n个店主,m个供应商,k种物品。告诉你每个店主需要多少第k个物品,每个供应商能提供多少第k个物品。不同店主从不同供应商那进货的价格也是不一样的。求满足所有店主进货需求的最小费用。 思路:首先,对于每种物品供大于求才能满足所有店主的需求。然后对每种物品分别建图,累加最大流最小费用。分别建图一次只要102个点,一开始建了5002个点,TLE #include #includ原创 2017-08-05 20:46:43 · 177 阅读 · 0 评论 -
HDU3416 Marriage Match IV【网络流】
题意:一个有向图,求最短路的条数,一条边不能用两次 思路:如果没有最短路这个限制的话,边的容量为1,最大流就是路的条数。加了这个限制,我们跑一边SPFA,用最短路中的边去建图,一条边(x,y,w),若d[x] + w == d[y],这条边就是最短路中的边。建完图,再求最大流 #include #include #include #include #include #inclu原创 2017-09-20 19:57:34 · 316 阅读 · 0 评论 -
HDU3081 Marriage Match II【网络流】
题意:n个女生,n个男生,每一轮女生选一个男生(他们之间没有争吵过且前几轮没有选过的),女生还可以选她朋友能选的男生(朋友的朋友是朋友),组成完备匹配,问最多进行几轮 思路:最大流,源点 →女生 → 男生 → 汇点,二分轮数k,源点出去的边容量为k,到汇点的也为k,女生、男生建好所有可能的边,容量为1,最大流为k*n的话,能进行k轮匹配。用并查集记录女生之间的关系 #incl原创 2017-09-20 19:00:14 · 203 阅读 · 0 评论 -
Our Journey of Dalian Ends【网络流】
题意:从大连到西安,中间必须经过上海,每个城市只能经过一次,问最短路径 思路:每个点拆成入点、出点,连一条费用0,容量1的边。超级源点连大连、西安的入点,汇点是上海的入点。跑一边最小费用最大流。最大流为2,就输出最小费用;否则-1. #include #include #include #include #include #include #include #include #原创 2017-09-11 19:11:04 · 232 阅读 · 0 评论 -
HDU3338 Kakuro Extension【网络流】
题意:往白格子中填数,\左下角的数代表向下连续的白格子数的和,右上角的数代表右边连续数的和 思路:最大流,源点 → 行和 → 白格子 → 列和 → 汇点。把有行和的格子看成一个点,连到右边的点,填1-9的数,我们都减一,容量为8,同样源点连到行和的点的容量也要减。列和的也一样 #include #include #include #include #include #incl原创 2017-09-19 16:29:39 · 283 阅读 · 0 评论 -
HDU3605 Escape【网络流】
题意:有n个人,m个星球,n个人的喜好不同,每个星球都有容纳量 思路:n很大,连出来边会很多,会T。所有人的选择方案最多1024种,我们一开始统计这些选择的数量。再去建图,这样点就1000+,源点连到选择,容量为人数,不同的选择连到它能选的星球,容量为inf,星球连到汇点,容量为容纳量 #include #include #include #include #include #原创 2017-09-18 21:33:13 · 455 阅读 · 0 评论 -
HDU6214 Smallest Minimum Cut【网络流】
题意:求边最少的最小割 思路:首先要知道,最小割=最大流,最小割中,正向割边的流量=容量,也就是满流。本来是这样做的,先跑一边最大流,再把满流的边的容量置1,没满流的inf,再来一遍最大流(最少选几个1,把图分成两份),这时答案就是最少的边,然后WA了 我们把原来的边扩大为(m+1)*c+1,求最大流%(m+1)就是答案。最小割中选的是满流的边,加起来mod(m+1),余数就是我们上一原创 2017-09-18 09:10:06 · 357 阅读 · 0 评论 -
POJ3436 ACM Computer Factory【网络流】
题意:有n台机器组装有p个零件的电脑,每台机器的输入参数为0、1、2,分别代表某个零件无、有、可有可无。输出参数为0、1,代表某个零件无、有。每台机器有加工上限,问最多能组装多少电脑 思路:最大流,n台机器拆点,入点、出点,容量为加工上限。当一台机器的输出全为1的,就是电脑组装完成,连汇点。当一台机器输入没有1的时候就是刚开始加工,与起点相连。机器和机器之间,输出和输入相匹配,连起来。除原创 2017-09-15 18:31:11 · 185 阅读 · 0 评论 -
CF Elementary Math【网络流】
题意:有n对数字,中间可以填+ - *,问有没有可能n个算式的结果都不一样。 思路:最大流,每对数字的3种结果都算出来,连过去,容量为1。起点连n对数,汇点连它们的结果,容量都为1。 最大流 #include #include #include #include #include #include #include #include #include #include #i原创 2017-09-14 21:54:14 · 200 阅读 · 0 评论 -
HDU4289 Control 【网络流】
题意:n个点,m条边,去除某些点使s、d不连通,每个点有权值 思路:最小割等于最大流。n个点拆点,入点到出点,边权为点权;m条双向边,出点连入点,边权为inf #include #include #include #include #include #include #include #include #include #include #include #include原创 2017-09-14 09:19:18 · 180 阅读 · 0 评论 -
HDU4280 Island Transport【网络流】
题意:从最左边的点 运人到 最右边的点 最多能运多少人 思路:裸的的最大流,就是卡时间,用邻接表的Dinic #include #include #include #include #include #include #include #include #include #include #include #include #include #include using nam原创 2017-09-13 17:43:53 · 167 阅读 · 0 评论 -
POJ2400 Supervisor, Supervisee【网络流】
题意:有n个主管和n个职工,每个主管对职工有不同的喜好程度,职工也是,最喜欢的为0(每行第一个),后面的依次+1,求最优搭配,输出方案 思路:跑一下最小费最大流,然后用dfs搜索最小费的方案,数据不是很大 PS:输入数据有误,应该先是每个职工的喜好,再是主管的喜好 #include #include #include #include #include #includ原创 2017-08-07 15:25:36 · 493 阅读 · 0 评论 -
POJ3686 The Windy's【网络流】
题意:有m个工厂,n个订单,问平均完成时间 思路:假设一个工厂依次完成n1,n2,n3,时间为3*t1 + 2*t2 + t3,一个任务在倒数第k个完成,时间为k*t。 把一个工厂分为n个时间点,枚举每个任务完成的时间,连到相应的时间点,每个工厂的时间点汇集在起点,容量为1,每个任务汇集在终点,容量为1,费用都为0 #include #include #include #in原创 2017-08-07 11:09:13 · 166 阅读 · 0 评论 -
POJ3281 Dining【网络流】
题意:一头牛喜欢某种食物或饮料,问最多让几头牛同时拥有食物和饮料 思路:把牛拆成两个点, 保证每头牛只算一次,起点 → 食物 → 牛入点 → 牛出点 → 饮料 → 汇点,求最大流。用一下Dinic的模板. 不知道下面的普通的最大流为什么过不了,有人知道吗,请留言 #include #include #include #include #include #inclu原创 2017-09-13 08:37:07 · 187 阅读 · 0 评论