码迷,mamicode.com
首页 >  
搜索关键字:迪杰斯特拉 最短路    ( 6960个结果
[poj 1502]昂贵的聘礼
一道不算太难的最短路喵~容我吐槽一下,酋长的地位居然不是最高的额——那你特么的居然还算是酋长?!枚举一个地位区间 [i..i+M-1] 只要所有的交易者的地位都在该区间中,那么就不会引起冲突而这个可悲的酋长是必须在区间中的,所以若酋长的地位为 L0 那么该枚举的区间就是 [L0-i, L0+M-i]...
分类:其他好文   时间:2014-09-23 00:10:13    阅读次数:245
Floyd算法之java详解
弗洛伊德算法介绍 和Dijkstra算法一样,弗洛伊德(Floyd)算法也是一种用于寻找给定的加权图中顶点间最短路径的算法。该算法名称以创始人之一、1978年图灵奖获得者、斯坦福大学计算机科学系教授罗伯特·弗洛伊德命名...
分类:编程语言   时间:2014-09-22 15:50:12    阅读次数:314
回溯法找迷宫最短路径
有一个二维数组,0表示路,-1表示墙,求其中任意两点的最短路径 我们先看,怎么求一条路径:求两点路径是一个数据结构上的典型的迷宫问题,解决办法如下: 从一点开始出发,向四个方向查找(上,右,下,左),每走一步,把走过的点的值+1,防止重复行走,并把走过的点压入堆栈(表示路径),如果遇到墙、或者已走过的点则不能前进,如果前方已经无路可走,则返回,路径退栈,这样递归调用,直到找到终点为止。...
分类:其他好文   时间:2014-09-21 23:52:51    阅读次数:425
昂贵的聘礼 poj 1062 Dijkstra
中文题,题意就不多说了,讲讲思路吧,先根据题意构图,与普通最短路不同的是这一题加了一个Rank,每个点都有一个Rank,题目要求最短路径上的点的Rank的最大差值在 M范围内,Dijkstra判断条件时加上Rank约束就行了。我没有添加汇点直接写的,另贴上别人添加汇点的写法。 我的代码: #include #include #include #include #include #i...
分类:其他好文   时间:2014-09-21 12:46:40    阅读次数:252
HDU 1181 变形课
多种解法,水题。 DFS,BFS,最短路。 只要B开头能到M结尾。 我建立的最短路模型,然后SPFA。。花式AC。。 #include #include #include #include #include #include #include #include #include #include #include #include #define INF 0x7fffff...
分类:其他好文   时间:2014-09-20 23:24:39    阅读次数:241
hdu 4034 - Graph
题目:给你最短路的集合,判断图最要有多少边。 分析:最短路。这道题目应该是最水的了,只要利用floyd判断成立和更新就解决了;             比赛开始了好久才去敲了这道题,导致累计时间,幸好最后以题数晋级。 说明:(2011-09-19 00:43)。 #include #include #include int maps[ 105 ][ 105 ]; bool sma...
分类:其他好文   时间:2014-09-20 14:08:57    阅读次数:152
Floyd-Warshall算法的理解
Floyd算法可以求图内任意两点之间的最短路径,三重循环搞定,虽然暴力,但是属于算法当中最难的动态规划的一种,很有必要理解。花了一晚上和半个下午专门看这个,才看个一知半解,智商被碾压没办法。我一直怀疑这种办法会不会漏情况,是不是一定正确,脑子里想特殊用例,却把脑子想乱了。收藏这么几个网址,从数学证明...
分类:其他好文   时间:2014-09-19 17:23:05    阅读次数:328
BZOJ1579 USACO 2009 Feb Gold 3.Revamping Trails Solution
题目大意:一个有N个点m条边的无向图,可以将路径上k条边的权值变为0,试求此时1-n的最短路径长度。 Sol:我们考虑分层图思想,将图复制k+1份,分别是0~k层,表示此时已经经过的“免费边”条数。 层与层之间的边权值为0且为单向由上层指向下层。 这样我们以0层的1点做单源最短路径。每一层的n点的距离最小值即为答案。 只不过这样的点数为O(K*N),边数为O(K*M),比较慢。 ...
分类:其他好文   时间:2014-09-19 15:42:55    阅读次数:223
hdu3488 / hdu3435 / hdu1853 最小费用最大流 圈 拆点
题目大意: 在一个有向图中,求经过所有的点的圈的最短路径。 思路: 把i点拆为i和i+n两个点,源点S(2*n+1)连向i, 容量为1,边权为0。i+n连向汇点E(2*n+2),容量为1,边权为0。对于输入的边a,b,w,建立a->b+n的边,容量为1,边权为w。 然后就是用模版...
分类:其他好文   时间:2014-09-18 22:05:34    阅读次数:209
UVA 11165 - Galactic Travel(BFS+twopointer+并查集)
UVA 11165 - Galactic Travel 题目链接 题意:给定一些不能走的边,要求出从s到t的最短路 思路:由于点数多,直接广搜会超时,所以加上优化,已经找过的点就不在重复找了,这点可以利用并查集进行优化,然后对于每个点的每个不能走的区间,可以先排序,然后利用twopointer的性质,每次可以从上次找到的位置往后找即可 代码: #include #i...
分类:其他好文   时间:2014-09-17 16:58:55    阅读次数:226
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!