摘要: http://poj.org/problem?id=1274这道题目与1469是一样的,我感觉连输出形式都差不多。只不过这里是牛与什么的匹配,同样,把他们分别用两个集合来保存,然后用匈牙利算法来求得最大匹配数 1 #include<stdio.h> 2 #include<string.h> 3 #include<iostream> 4 using namespace std; 5 #define N 210 6 int map[N][N],m[N],v[N]; 7 int n,mm; 8 int dfs(int x) 9 {10 int i;11 for(i 阅读全文
posted @ 2012-03-07 17:33 AC_Girl 阅读(136) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=3041这个题目真的一点变形都没有,直接套一个匈牙利算法求最大匹配数。把所给的点,分成两个集合,然后用一个模板就可以了 1 #include<stdio.h> 2 #include<string.h> 3 #include<iostream> 4 using namespace std; 5 #define N 510 6 int map[N][N],v[N],m[N]; 7 int n,g; 8 bool dfs(int x) 9 {10 int i;11 for(i=1;i<=n;i++)12 { 阅读全文
posted @ 2012-03-07 17:30 AC_Girl 阅读(144) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=1469题目是说有几门课程和几个学生,让你求的学生和课程之间的最大匹配数是否和所给的课程数目相等。如果相等输出“YES” 否则,输出“NO“下面这就是一个二分图 二分图模型二分图又称作二部图,是图论中的一种特殊模型。 设G=(V,E)是一个无向图,如果顶点V可分割为两个互不相交的子集(A,B),并且图中的每条边(i,j)所关联的两个顶点i和j分别属于这两个不同的顶点集(i in A,j in B),则称图G为一个二分图。 简而言之,就是顶点集V可分割为两个互不相交的子集,并且图中每条边依附的两个顶点都分属于这两个互不相交的子集。给定一个二分图 阅读全文
posted @ 2012-03-07 17:26 AC_Girl 阅读(193) 评论(0) 推荐(0) 编辑
摘要: http://acm.sdut.edu.cn/web/showproblem.php?pid=2098&cid=1088意思就不用说了,都是汉语,都能看的懂。真是纠结了好几天,本来是A了的,可是后台数据一完善后,我的程序真是毛病百出了。重写这道题目!!!下面说一下判断字符串不合法的情况由于是好几天才A掉的,所以中间思路可能有些乱1. 从字符串第一个不是空格的地方开始,到字符串最后不为空格的地方。如果中间有空格出现,则是非法的2.如果字符串里没有“.”,也没有"e",也没有"E",则是非法的,如果有任何一个,则其个数不能超过1个,并且“e”和“E” 阅读全文
posted @ 2012-03-07 16:43 AC_Girl 阅读(368) 评论(0) 推荐(0) 编辑