网络流 POJ2112】的更多相关文章

题意:K个产奶机,C头奶牛,每个产奶机最多可供M头奶牛使用:并告诉了产奶机.奶牛之间的两两距离Dij(0<=i,j<K+C). 问题:如何安排使得在任何一头奶牛都有自己产奶机的条件下,奶牛到产奶机的最远距离最短?最短是多少? 建图 源点    -> 每头牛  ->   每个机器 ->   汇点 权             1                ?                  M 二分 找最远距离 里面最小的 二分距离  if dis[i][j]<dis…
首先来认识一下网络流中最大流的问题 给定一个有向图G=(V,E),把图中的边看做成管道,边权看做成每根管道能通过的最大流量(容量),给定源点s和汇点t,在源点有一个水源,在汇点有一个蓄水池,问s-t的最大水流量是多少 网络流图里,源点流出的量等于汇点流入的量,除源汇外的任何点,其流入量之和等于流出量之和 . 首先我们来看下面的图 s是源点,t是汇点 先这么想,先用dfs找出一条从s-t的路线,把他塞满,然后流量就是路径中容量最小的那条路的容量,然后把路径上的容量都剪去这个流量,再重新从s-t找可…
题目链接: https://vjudge.net/problem/POJ-2112 题目大意: k个机器,每个机器最多服务m头牛. c头牛,每个牛需要1台机器来服务. 告诉你牛与机器每个之间的直接距离. 问:让所有的牛都被服务的情况下,使走的最远的牛的距离最短,求这个距离. 解题思路: 二分枚举距离,实际距离满足当前枚举距离限制的可以加入这条边.枚举的距离中符合条件的最小值就是答案. 建图过程: 一个超级汇点,每个机器和汇点的容量都是m. 一个超级源点,和每头牛的容量都是1. 机器i与牛j之间的…
                                         Optimal Milking Time Limit: 2000MS   Memory Limit: 30000K Total Submissions: 16461   Accepted: 5911 Case Time Limit: 1000MS Description FJ has moved his K (1 <= K <= 30) milking machines out into the cow past…
题意:给你k个挤奶器,c头牛,每个挤奶器能放m头牛,问你奶牛需要走的最大距离最小是多少: 解题思路:因为最大距离最小,也就是求最小的距离满足所有牛都能到,所以我们先用floyd跑最短路,把所有点之间的距离算出来后再,对答案进行二分:牛和挤奶器的距离<=二分值的可以连一条边,容量为1; 然后源点和奶牛连一条容量为1的边,挤奶器和汇点连一条容量为m的边,所以二分只是为了看奶牛是否能到达某个挤奶器: 代码: #include<iostream> #include<algorithm>…
题意:有K个挤奶机编号1~K,有C只奶牛编号(K+1)~(C+K),每个挤奶机之多能挤M头牛,现在让奶牛走到挤奶机处,求奶牛所走的最长的一条边至少是多少. 题解:从起点向挤奶机连边,容量为M,从挤奶机向奶牛连,边容量为1,从奶牛向汇点连边,容量为1.二分最长边的长度,每次重新构图,边权小于等于mid的可以走,其余为INF,每次检查汇点的流量是否为C即可. 代码如下: #include <iostream> #include <algorithm> #include <cstd…
Optimal Milking Time Limit: 2000MS   Memory Limit: 30000K Total Submissions: 18083   Accepted: 6460 Case Time Limit: 1000MS Description FJ has moved his K (1 <= K <= 30) milking machines out into the cow pastures among the C (1 <= C <= 200) co…
                     Ombrophobic Bovines Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 18205   Accepted: 3960 Description FJ's cows really hate getting wet so much that the mere thought of getting caught in the rain makes them shake in…
题目大意:F个草场,P条道路(无向),每个草场初始有几头牛,还有庇护所,庇护所有个容量,每条道路走完都有时间,问所有奶牛都到庇护所最大时间最小是多少? 思路:和POJ2112一样的思路,二分以后构建网络流跑就行TUT,问题是,这题是无向边!!无向边啊 题目还给出 3 2 702 3 90这么让人觉得是有向边的数据,纠结过这个之后再把数组开小点(开打了会TLE )然后就能AC了 #include <stdio.h> #include <iostream> #include <s…
网络流是什么?为什么网络流中需要存在缓存数据?为什么PF中要采用缓存网络数据的机制?带着这几个疑问,让我们好好详细的了解一下在网络数据交互中我们容易忽视以及薄弱的一块.该部分为PF现有的网络流模型,但是在这里只讲解最本质的概念,而没有详细说明代码,如果有兴趣的不妨先看了这部分再去看下代码,一切或许会豁然开朗. 网络流 如果你不知道计算机中流数据模型的定义,那么你就可以试想一下河流,有着固定起点和终点的河流.将流水从某一个地方送向另一个地方的通道,我们现实中一般叫做渠道,这种渠道在计算机之间就是网…