图论算法
PaigeWw
这个作者很懒,什么都没留下…
展开
-
Intrepid climber (dfs+树)
http://acm.hnu.cn/online/?action=problem&type=show&id=13309 利用数组node,head建树 深度遍历两次: 1.找出要走到的点 2.计算总代价 #include #include #include #include #include #include #include #include #incl原创 2015-07-29 09:09:49 · 647 阅读 · 0 评论 -
hdu2255 (二分图最优匹配)
Kuhn Munkras算法 纯模板题。具体实现还不太懂,先贴模板。有空再研究。 很好的参考资料:http://www.cnblogs.com/skyming/archive/2012/02/18/2356919.html #include #include #include #include #include #include using namespace std; #def原创 2015-08-06 18:50:19 · 433 阅读 · 0 评论 -
hdu1874(最短路:一道题学习Floyd,Dijkstra,Bellman-Ford,SPFA)
Floyd(动态规划) 1,从任意一条单边路径开始。所有两点之间的距离是边的权, 如果两点之间没有边相连,则权为无穷大。 2,对于每一对顶点 u 和 v,看看是否存在一个顶点 w 使得从 u 到 w 再到 v 比已知的路径更短, 如果是更新它。 #include #include #include #include #include #define M原创 2015-07-30 13:09:47 · 465 阅读 · 0 评论 -
poj 3259 Wormholes(基础Bellman-Ford)
#include #include #include #include #include #include #include #include #include #define MEM(a,x) memset(a,x,sizeof a) #define eps 1e-8 #define MOD 10009 #define MAXN 505 #define MAXM 5505 #原创 2015-07-30 18:02:55 · 335 阅读 · 0 评论 -
poj2502(SPFA+建图)
http://poj.org/problem?id=2502 #include #include #include #include #include #include using namespace std; #define MAXN 2050 #define MAXM 100000+10 #define INF 999999999 struct Node{ int t原创 2015-08-10 14:52:13 · 412 阅读 · 0 评论 -
poj1469 二分图匹配学习
匈牙利算法详解: http://blog.csdn.net/dark_scope/article/details/8880547 二分图最大匹配裸题 http://poj.org/problem?id=1469 #include #include #include #include #include #include #define N 1000 using n原创 2015-08-04 13:06:53 · 849 阅读 · 0 评论 -
poj 1068(二分图最大独立集)
二分图最大独立集,说白了还是二分最大匹配的应用 二分最大匹配:虽然说是二分图,但是在应用中常常是一个集合中的----------未完------------------ #include #include #include #include #include #include #define INF 10000000 #define MAXN 505 using namesp原创 2015-08-05 18:45:56 · 407 阅读 · 0 评论 -
hdu3829 Cat VS Dog(二分最大独立集)
http://acm.hdu.edu.cn/showproblem.php?pid=3829 详解见:http://blog.csdn.net/niushuai666/article/details/7076116 写得很详细,很清楚 #include #include #include #include #include #include #define INF 10原创 2015-08-06 09:49:36 · 382 阅读 · 0 评论 -
UVa 12878 - Flowery Trails(最短路应用)
题意:要在所有最短路两侧放花,求出要放花的总花费。 最短路可能有多条,要求出在最短路上的所有路径。然后权值相加,乘以2 现在要找出所有在最短路上的路径。还是用图片理解得更清晰......... . 那要如何判断路径是否在最短路上呢? 先看下图,由题意可知,需要求出0->8的最短路 方法: 1,用SPFA或Dijkstra求出从0出发的dis0数组,和从8出发的dis1数组,即可知最短原创 2015-08-11 09:59:08 · 995 阅读 · 0 评论 -
Uva12880(二分匹配)
图书俱乐部 题意:每人带一本图书,和另一个人交换。当然,大家都希望能换到自己喜欢的书。 题意:给出参与人数,以及一些包含2个整数的信息。例如1 2(代表1喜欢2的书) 题意:判断是否所有人都能换到自己喜欢的书。 简单的二分匹配。。。。。。 为了加快速度,使用了自己建图的方式 #include #include #include #include #include using nam原创 2015-08-17 15:09:51 · 387 阅读 · 0 评论 -
hdu1863 最小生成树基础
点击打开链接 #include #include #include #include #define MAXN 10005 using namespace std; struct Path{ int u,v,w; bool operator<(const Path p)const{ return w<p.w; } }path[MAXN]原创 2015-07-29 19:38:31 · 360 阅读 · 0 评论 -
poj3159 {差分约束系统—>最短路)
参考:http://www.cnblogs.com/void/archive/2011/08/26/2153928.html 题意:班上有n个同学,现在有一些糖要分给他们,设第i个同学得到的糖为p[i],分糖必须满足条件: 题意:第i个同学要求第j个同学的糖不能超过自己k个,即p[j] - p[i] = 0。要求在满足这些条件的 题意:情况下,求出p[n] - p[1]的最大值。 分析原创 2015-08-20 09:39:16 · 320 阅读 · 0 评论