码迷,mamicode.com
首页 >  
搜索关键字:过河问题 状态向量 图论    ( 2541个结果
POJ 3228 最小生成树的应用
要使得路径上边的最大值最小,实际上就是沿着最小生成树走,就满足条件。故先求出最小生成树,然后保存,在dfs一遍搜索路径。 VIEW CODE //#pragma comment(linker, "/STACK:102400000,102400000") #include #include #include #include #include #include #include #inclu...
分类:其他好文   时间:2015-01-29 14:45:32    阅读次数:137
Codeforces Round #286 div.2 D 505D. Mr. Kitayuta's Technology【强连通分量,弱联通分量】
题目链接:http://codeforces.com/contest/505/problem/D 题目大意: 在一个图中,有n个顶点,给出m对数字(u,v)表示顶点u和顶点v必须直接或者间接相连,让你构造一个这样的图,输出最少需要多少条边。 分析: 毫无疑问,n个顶点的话,我们最多可以用n条边,使得n个顶点构成一个环,满足所有的情况(任意两点都是联通的),但是这并不一定是最少的边。 于是...
分类:移动开发   时间:2015-01-28 17:57:22    阅读次数:209
图论——最短路径——dij
dij 模板 通过 poj 2387 求去点1 -点 n 的最短路径 #include #include #include #include #include using namespace std; const int MAXV = 4010; const int inf = 10000000; int map[MAXV][MAXV];//路径长度 int d[MAXV];/...
分类:其他好文   时间:2015-01-28 14:44:15    阅读次数:169
poj 2728(Desert King) 最优比例生成树 (分数规划)
这题是最小生成树的一种扩展,就是求一棵树  使得   最小。   其中cost 为每条边花费,len为长度。  这实际上就是一个最优比例生成树。最优比例生成树的求解使用了分数规划的方法。  我们先任取k,假设k是最小值,那么sigma(ccost)-k*sigma(len)==0  。那么我们就新建图边权 为  ccosti-k*leni  。求一次最小生成树,如果生成树权值小于0,那么书名其实...
分类:其他好文   时间:2015-01-28 13:10:54    阅读次数:124
图论专题整理
poj1251 Jungle Roads 思路:最小生成树          解题报告Here CodeForces 472D Design Tutorial: Inverse the Problem 思路:最小生成树          解题报告Here poj1789 Truck History 思路:最小生成树          解题报告Here ...
分类:其他好文   时间:2015-01-28 09:59:09    阅读次数:196
图论——次小生成树
次小生成树模板 通过poj 1679 #include #include #include #include #include #include #include #include using namespace std; #define INF 10000000 /* * 次小生成树 * 求最小生成树时,用数组Max[i][j]来表示MST中i到j最大边权 ...
分类:其他好文   时间:2015-01-27 15:05:28    阅读次数:119
<图论算法之2分匹配> hdu 1281(棋盘游戏)
题意: 给一个n*m的棋盘,在上面放上车,放的车之间不能相互攻击(在同一行或者同一列就能相互攻击),并且只有某些点能放车。 问最多能放多少车,其中有多少个格子必须放才能放最多的车。 这是一道很好的理解匈牙利算法的题目。  首先我们求最多放多少车,这是一个行列匹配问题。假设我们用n个左边的点代表行 ,m个右边的点放在右边,如果一个格子(x,y)能放车,那么将左边的x和右边的y连接一起建一条边。这个...
分类:编程语言   时间:2015-01-26 22:54:40    阅读次数:320
图论——最小生成树
通过:poj-1287 #include #include #include #include #include #include #include using namespace std; #define INF 10000000 int n, m; int a, b, c; int map[100][100], dis[100], v[100]; int prim(in...
分类:其他好文   时间:2015-01-25 13:53:33    阅读次数:155
HDU 3342 Legal or Not
在一个群里面,大家互相请教问题,比如A请教B,我们就把B叫做师傅,把A叫做徒弟,这样会产生很多“师傅——徒弟”的关系,一个徒弟可以有很多的师傅,一个师傅也可以有很多徒弟,这是合法的,但是不能出现A是B的师傅而且B是A的师傅,或者A是B的徒弟而且B是A的徒弟,或者在一个更大的关系环里面出现这种情况。很明显题目的意思就是,判断一个给定的有向图中是否存在环。了解了这些,解题方法就非常简单了,那就是直接进...
分类:其他好文   时间:2015-01-25 00:10:59    阅读次数:204
图论——并查集
/* 并查集模板 by:mfcheer */ #include #include #include #include #include #include #include #include #include using namespace std; #define N 100010 int n, m; int fa[N]; int...
分类:其他好文   时间:2015-01-24 18:47:09    阅读次数:189
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!