MARK 用spfa判断是否存在负环判断是否存在负环的方法有很多,其中用spfa判断的方法是:如果存在一个点入栈两次,那么就存在负环。细节想想确实是这样,按理来说是不存在入栈两次的如果边权值为正的话这个算法是O(N*M)还有一种方法是直接用bellman-ford,虽说spfa也就是bellman-...
分类:
其他好文 时间:
2014-08-12 18:49:44
阅读次数:
206
前言
这一强大的算法却有一个不相关的名字,常常引起混淆。实际上创造者Richard Bellman把这名字作为保护伞来掩人耳目的,从此延续下来。说它强大是因为应用范围很广,在优化算法中,在图像融合中,在很多实际问题中都有其身影。还因为使用它往往能收到奇效,当你尝试了分治,尝试了贪心仍然不能满意的时候...
分类:
其他好文 时间:
2014-08-05 13:30:29
阅读次数:
337
http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2894谈一下对贝尔曼福特的认识(参考别人的)BF是对边进行操作,dijkstra 是对点进行操作,N个顶点的最短路最多是N-1条边,所以需要循环N-1次1....
分类:
其他好文 时间:
2014-08-02 17:49:23
阅读次数:
261
题意:第一排输入n(货币的种类) m(兑换货币的站点数) t(你现在拥有的货币是第几类货币) v(你现在拥有多少该类货币)
下面每行输入的数:a b 就是a兑换b rab 兑率 cab (手续费) rba 同样的意思 (ab表示a 兑换 b)
问t币的金额经过交换最终得到的t币金额数能否增加
思路:寻找正环 果断bellman_ford算法 寻找最长的路,...
分类:
其他好文 时间:
2014-08-01 13:49:01
阅读次数:
182
思路:这道题是基础的最短路径算法,可以拿来试一下自己对3种方法的理解
dijkstra主要是从第一个点开始枚举,每次枚举出当当前最小的路径,然后再以那最小的路径点为起点,求出它到其它未标记点的最短距离
bellman-ford
算法则是假设有向网中有n 个顶点、且不存在负权值回路,从顶点v1 和到顶点v2 如果存在最短路径,则此路径最多有n-1 条边。这是因为如果路径上的边数超过了...
分类:
其他好文 时间:
2014-07-31 00:11:16
阅读次数:
464
Bellman-ford算法的反向应用--正循环检查
/** \brief poj 1860 Bellman-Ford
*
* \param date 2014/7/24
* \param state AC
* \return memory 708K time 141ms
*
*/
#include
#include
#include
using namespace std...
分类:
其他好文 时间:
2014-07-31 00:01:23
阅读次数:
213
高仿代码:#include #include #include #include #include #include using namespace std;#define N 205#define M 2005const int inf = 0x3f3f3f3f;int v[M],u[M],d[N...
分类:
其他好文 时间:
2014-07-29 12:22:16
阅读次数:
296
单源最短路问题 Bellman-Ford 代码(C)本文地址: http://blog.csdn.net/caroline_wendy单源最短路: 固定一个起点, 求它到其他所有点的最短路的问题.Bellman-Ford: 设当前到顶点i的最短路长度为d[i], 并设初值d[s]=0, d[i]=INF, 再不断使用递推关系式d[e.to] = d[e.from] + e.cost更新d的值.代码...
分类:
其他好文 时间:
2014-07-28 00:19:29
阅读次数:
248
一直不知道差分约束是什么类型题目,最近在写最短路问题就顺带看了下,原来就是给出一些形如x-y,=k的标准形式注意点:1. 如果要求最大值想办法把每个不等式变为标准x-yx-y=k的标准形式,然后建立一条从y到x的k边,求出最长路径即可2.如果权值为正,用dj,spfa,bellman都可以,如果为负...
分类:
其他好文 时间:
2014-07-25 02:16:04
阅读次数:
195
题意:给定n中货币,以及它们之间的税率,A货币转化为B货币的公式为 B=(V-Cab)*Rab,其中V为A的货币量,
求货币S通过若干此转换,再转换为原本的货币时是否会增加
分析:这个题就是判断是否存在正权回路,可以用bellman-ford算法,不过松弛条件相反
也可以用SPFA算法,判断经过转换后,转换为原本货币的值是否比原值大、、、...
分类:
其他好文 时间:
2014-07-24 23:32:33
阅读次数:
297