
-----------图论---------
三水木人
这个作者很懒,什么都没留下…
展开
-
图论-最短路问题
最短路问题floyed算法可以求任意两点的最短路,适合负边权,也可以用于检测任意两点是否连通。算法效率O(N^3)核心代码: //d[i][j]表示节点i到j的最短路 for(int k=1;k<=n;k++) for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) d[i][j]原创 2017-03-12 23:28:34 · 894 阅读 · 1 评论 -
[USACO07OPEN]吃饭Dining-woj2351【最大流】
题意农夫JOHN为牛们做了很好的食品,但是牛吃饭很挑食. 每一头牛只喜欢吃一些食品和饮料而别的一概不吃.虽然他不一定能把所有牛喂饱,他还是想让尽可能多的牛吃到他们喜欢的食品和饮料.农夫JOHN做了F (1 <= F <= 100) 种食品并准备了D (1 <= D <= 100) 种饮料. 他的N (1 <= N <= 100)头牛都以决定了是否愿意吃某种食...原创 2018-12-26 13:05:52 · 214 阅读 · 0 评论 -
bzoj1458-wo4263 士兵占领【最大流】
题意有一个M * N的棋盘,有的格子是障碍。现在你要选择一些格子来放置一些士兵,一个格子里最多可以放置一个士兵,障碍格里不能放置士兵。我们称这些士兵占领了整个棋盘当满足第i行至少放置了Li个士兵, 第j列至少放置了Cj个士兵。现在你的任务是要求使用最少个数的士兵来占领整个棋盘。建图每一行建立Ai,与源点S连接,容量为ri每一列建立Bi,与汇点连,容量为ci第i行第j列可以放士兵,Ai-&amp;...原创 2018-12-26 13:02:34 · 208 阅读 · 0 评论 -
POJ 3204 Road Reconstruction-网络流-最小割边集
题意一个由n个点,m条边构 成的有向图,每条边都有一定的流量。现在求存在多少条边,在增加这些边的流量后从1点到n的总流量会增加。分析先求最大流。在得到最大流f后的残量网络G_f中,从s开始DFS,所有能遍历到的点构成点集S。没有搜索到的构成点集T,两集合间的边构成最小割边集。注意:虽然 最小割[S,T]的边都是满流边,但是满流边不一定是最小割边集。如下面的二分图的例子图(a)给出了一...原创 2018-12-26 12:58:48 · 404 阅读 · 0 评论 -
pojAntenna Placement【二分图-最小边覆盖】
题意一个矩形中,有N个城市’*’,现在这n个城市都要覆盖无线,若放置一个基站,那么它至多可以覆盖相邻的两个城市。问至少放置多少个基站才能使得所有的城市都覆盖无线?分析将一个基站表示一条边,相邻的两点连接起来。这样就得到一个模型,求一个无向图用最少的边覆盖。即是一个二分图最小边覆盖问题几个概念边覆盖集:通俗地讲,所谓边覆盖集,就是G中所有的顶点都是E中某条边的邻接顶点(边覆盖顶点),一条边...原创 2018-12-27 11:04:11 · 371 阅读 · 0 评论 -
Way Selection【二分图最大匹配】
导航题意分析参考代码题意小杉家族r个人正在一片空地上散步,突然,外星人来了……留给小杉家族脱逃的时间只有t秒,每个小杉都有一个跑的速度v总共有a个传送点,小杉们必须在t秒内到达传送点才能脱逃当一个小杉进入一个传送点以后,该传送点就会消失现在请你安排一种方案,使脱逃的小杉尽可能的多分析r个人是X集合,a个传送点是Y集合。如果第i个人能在t时间内到达第j个传送点,则ri向aj连边。最后...原创 2018-12-26 22:02:03 · 478 阅读 · 0 评论 -
poj1469【模板】【二分图最大匹配】
题意一共有N个学生跟P门课程,一个学生可以任意选一门或多门课,问是否达成:1.每个学生代表的都是不同的课(如果一个学生选修的那门课,那么他就可以代表这门课)2.每门课都有一个代表输入为:P N(课程数跟学生数)接着有P行,格式为Count studenti studenti+1 ……studentcount(Count表示对课程1感兴趣的学生数,接着有Count个学生)如第一行2 ...原创 2018-12-26 17:27:32 · 175 阅读 · 0 评论 -
「网络流 24 题」方格取数【二分图点权最大独立集】woj2625
题意在一个有 m×n个方格的棋盘中,每个方格中有一个正整数。现要从方格中取数,使任意 2 个数所在方格没有公共边,且取出的数的总和最大。试设计一个满足要求的取数算法。问题分析二分图点权最大独立集,转化为最小割模型,从而用最大流解决。建模方法首先把棋盘黑白染色,使相邻格子颜色不同,所有黑色格子看做二分图X集合中顶点,白色格子看做Y集合顶点,建立附加源S汇T。1、从S向X集合中每个顶点连...原创 2018-12-26 17:03:06 · 196 阅读 · 0 评论 -
USACO Training Section 5.4-Telecowmunication 奶牛的电信【最小割边集字典序最小】woj1791
题意n个点m条边的无向图,问最少破坏多少个点可以使得S,T不连通,按字典序最小输出方案解法对于第一个问,显然的一个拆点技巧,将一个点i拆分为2个点i,i’,i-&gt;i’,容量为1原图的边&lt;u,v&gt;,容量设为inf,因为每个点拆分为2个点,所以建边&lt;u’ ,v ,inf&gt;,&lt;v’ , u ,inf&gt;然后求出最大流即最小割对于第二问,因为最大流后求出原创 2018-12-26 14:34:41 · 211 阅读 · 0 评论 -
ZOJ2587 Unique Attack 【最小割的唯一性判定】
题意给定一个无向图,要求判定分离两个点的最小割是否唯一。解法在求出最大流的后,在残余网络中,从源点进行一次搜索,搜索按照未饱和的边进行,得到顶点子集S的顶点个数;再从汇点反向搜索未饱和的边,得到子集T的顶点个数,判定顶点数相加是否等于总共的顶点数。如果能到所有顶点,则是唯一的,否则不是唯一参考代码#include<iostream>#include<vector&g...原创 2018-12-26 13:27:31 · 354 阅读 · 0 评论