大意:同学们去坐过山车,但是想要去做过山车必须是一个男同学一个女同学一起坐,现在告诉你每个女同学想要跟那些人一起坐,问最多能有多少对同学能够坐过山车男女同学人数都是 2 #include 3 #include 4 using namespace std; 5 6 const int maxn ...
分类:
其他好文 时间:
2014-08-07 00:27:57
阅读次数:
169
大意:已知有一个n*m的矩阵现在用1 * 2 的小木块去铺这个矩阵 ,矩阵中的黑点表示陷阱不可以铺,问能不能把除了陷阱之外的所有各自都铺满nm 2 #include 3 #include 4 using namespace std; 5 6 const int maxn = 33; ...
分类:
其他好文 时间:
2014-08-07 00:22:37
阅读次数:
234
/*
这道题将每行x看成是结点x,没列y看成是结点y,而障碍物的坐标xy看成是从x到y的
一条边。建图后问题就变成了,找最少的点,使得这些点与所有的边相邻,即最小
点覆盖,用匈牙利算法解决。
-------------------------------
定理:最小点覆盖数 = 最大匹配数,即求图的最大匹配即可,匈牙利算法
-------------------------------
模板讲解:...
分类:
其他好文 时间:
2014-08-04 21:39:08
阅读次数:
228
转载百度文库
算法———艺术
二分图匹配剖析
很多人说,算法是一种艺术。但是对于初学者的我,对算法认识不是很深刻,但偶尔也能感受到他强大的魅力与活力。
这让我追求算法的脚步不能停止。下面我通过分析匈牙利算法以及常用建图方式,与大家一起欣赏算法的美。
匈牙利算法
匈牙利算法是用来解决最大二分图匹配问题的,所谓二分图即 “一组点集可以分为两部分,且每部分内各点互不相连,两部分的点之间可...
分类:
其他好文 时间:
2014-08-02 12:54:43
阅读次数:
319
1:类和结构体定义类和结构体分别通过关键字class 和struct定义。swift的编码风格是类class和结构体struct名字使用大写字母开头的匈牙利表示法,相反的。类的方法和属性则用小写字母开头的匈牙利表示法。结构体总是通过被复制而进行代码传递的。struct SForm{ var i...
分类:
其他好文 时间:
2014-07-31 20:10:07
阅读次数:
228
给定一个二分图G,M为G边集的一个子集,如果M满足当中的任意两条边都不依附于同一个顶点,则称M是一个匹配。Reference:google上搜"ByVoid 二分图"(被墙了T^T)计算二分图的最大匹配:匈牙利算法模板:#include #include #define MAX 102long n,...
分类:
其他好文 时间:
2014-07-31 09:41:15
阅读次数:
270
学习一种语言说难也难,说不难也不难。只要你掌握了正确的方法,那么一切语言都毫无压力。你知道匈牙利有一位牛人吗,她叫卡莫·洛姆布的人,学习了16种语言,10种达到能说的程度,另外6种达到能翻译专业书刊、阅读和欣赏文艺作品的程度。她把自己漫游外语天地所获得的心得体会总结为十条: (本文来自e良师益友网)...
分类:
其他好文 时间:
2014-07-30 20:06:34
阅读次数:
806
1.java中没有友元类,需要public,private,protected,package等关键字来限制2.python单例模式的实现http://blog.csdn.net/ghostfromheaven/article/details/76718533.命名法有匈牙利,骆驼,帕斯卡等命名法h...
分类:
其他好文 时间:
2014-07-28 02:58:39
阅读次数:
234
解题报告
题目传送门
题意:
M×N的矩阵,k个点被标记,用2×1的木板最多可以放置多少个。
思路:
把标记的格子除外,链接相邻的两个格子,然后最大匹配出来的是二分图的两倍。
c++TLE了,G++1700+过了,理论上匈牙利算法的时间复杂度是n^3,就应该超时,可能数据弱吧。
还有一种建图方式就是建成二分图,将矩阵中的点奇偶分。
#include
#include
#incl...
分类:
其他好文 时间:
2014-07-28 00:11:29
阅读次数:
389