随笔分类 - 图论
HDU 3395 Special Fish
摘要://简单KM,,要注意的是XOR是异或的意思。。不要看不懂。。我看了半天才知道。。//这个知道了就可以很简单的KM了。。这个题目也可以用最小费用最大流来做。。但是图比较难建。。#include <iostream>#include <stdio.h>#define MAX 105#define min(a,b) a<b?a:b #define max(a,b) a>b?a:b int lx[MAX],ly[MAX],match[MAX],visx[MAX],visy[MAX],lack,g; int map[MAX][MAX]; using namespac
阅读全文
HDU 3991 Harry Potter and the Present II 最小路径覆盖 建图
摘要://这个题目第一次遇到的时候不会。。然后看了大神的解题报告才懂的。。
//N个城市,M条路。。有Q个任务。。,求最少需要几个人才能完成任务。。先用FLOYD出任意两点的最短距离、、然后根据每个任务的时间排序。。然后拆点建边、、
阅读全文
POJ2060 Taxi Cab Scheme最小路径覆盖
摘要://公司有M个顾客,给出每个顾客的发车时间,和起点和终点,如果第i个顾客
//到达之后而第j个顾客还没出发,那么第i辆车就可以去送第j个顾客。。求最少要几辆车。
//这样就比较容易想到最短路径覆盖了。。最短路径覆盖=顶点数-最大匹配数。把可以两个顾客一辆车送的连起来,然后匈牙利算法好了。。
阅读全文
POJ 2239 Selecting Courses匈牙利算法
摘要://基本上能想到二分匹配就能做得出来了。。把第j门课与星期a的第b节课相连,,然后匈牙利算法就直接出来了。。#include <iostream>#include <stdio.h>#include <string.h>using namespace std;int const maxn=500;int mk[maxn] ;int nx, ny;//X和Y集合中顶点的个数int g[maxn][maxn];//邻接矩阵, X集合和Y集合中顶点间边的信息int cx[maxn] , cy[maxn];//cx[i]表示最终求得的最大匹配中与Xi匹配的Y顶点,
阅读全文
寒假第一题。。水题匈牙利切了1个小时。。坑爹
摘要://简单的匈牙利算法模板题。。题意是奶牛在自己喜欢的牛栏里才有最大的产量,有N头牛,M个牛栏。求最大产量。
阅读全文
HDU 过山车 匈牙利算法
摘要:题意简单,不说了,,明显的匈牙利。。下面给出一种用队列写的匈牙利,以免以后点多了,用数组做不了。。
阅读全文
hdu 2458 Kindergarten 匈牙利
摘要:题意:本题要求学生中相互了解的人数最多有多少。男生之间都是相互了解的,女生之间也是相互了解的,所以我们可以把相互了解的人之间的边看成是1,所以男生是一个集合,女生是一个集合,map[男][男]=1;map[女][女]=1;当男生和女生熟悉时,map[][]=1;当男生与女生不了解时,map[][]=0;所以求相互了解的人最多有几个就是求构造出的二分图的最大独立集。(本来最大独立集是指互不相关的点最多有几个,而此处我们把相关的定义为map[][]=1;不相关的定义为map[][]=0;所以最大独立集就是所有互相了解的人的集合)
最大独立集=V-最大匹配数;(V为最大顶点数)
阅读全文
HDU 1150 Machine Schedule 匈牙利算法
摘要:HDU 1150 Machine Schedule 匈牙利算法
思路:
把A的n个mode和B的m个mode看作图的顶点,如果某个任务可以在A的mode_i或B的mode_j上完成,则从Ai到Bj连接一条边,这样构造了一个二部图。 求二部图的最小点覆盖集问题。转换成求二部图的最大匹配问题。。
阅读全文
POJ2536:Gopher II 匈牙利算法
摘要:POJ2536:Gopher II 匈牙利算法
题意:有n个地鼠和m个洞,有鹰飞来时,n个地鼠如果能在s秒从当前位置回到一个洞,就能不死,一个洞能容纳一个地鼠,它们的速度为v。求死的个数最小。
思路:匈牙利算法求最大匹配,n-最大匹配就是了,。。把能跑进洞里的老鼠和洞连起来。。
阅读全文
Poj 2446 Chessboard 匈牙利算法
摘要:Poj 2446 Chessboard 匈牙利算法
/*题意:给出一个矩形N*M棋盘,有K个格子是空洞,然后用2*1的矩形,对所有
非空洞的格子进行覆盖,如果可以全部覆盖,就puts("YES");
阅读全文
最大匹配之匈牙利算法模板。。
摘要:最大匹配之匈牙利算法模板。。
二分图的性质: ( 交错轨 和增广路的概念很重要 )
定理:无向图G为二分图的充分必要条件是,G至少有两个顶点,且其所有回路的长度均为偶数.
匹配:设G=为二分图,如果M⊆E,并且M中没有任何两边有公共端点。M=Φ时称M为空匹配.
阅读全文
浙公网安备 33010602011771号