题意:第一排输入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
题意:给定n中货币,以及它们之间的税率,A货币转化为B货币的公式为 B=(V-Cab)*Rab,其中V为A的货币量,
求货币S通过若干此转换,再转换为原本的货币时是否会增加
分析:这个题就是判断是否存在正权回路,可以用bellman-ford算法,不过松弛条件相反
也可以用SPFA算法,判断经过转换后,转换为原本货币的值是否比原值大、、、...
分类:
其他好文 时间:
2014-07-24 23:32:33
阅读次数:
297
Dijkstra算法:解决的问题: 带权重的有向图上单源最短路径问题。且权重都为非负值。如果采用的实现方法合适,Dijkstra运行时间要低于Bellman-Ford算法。思路: 如果存在一条从i到j的最短路径(Vi.....Vk,Vj),Vk是Vj前面的一顶点。那么(Vi...Vk)也必定是从.....
分类:
其他好文 时间:
2014-07-23 22:11:57
阅读次数:
290
Bellman-Ford算法Dijkstra算法无法判断含负权边的图的最短路。如果遇到负权,在没有负权回路存在时,即便有负权的边,也可以采用Bellman-Ford算法正确求出最短路径。PS:负权回路的含义是,回路的权值和为负。算法描述1.初始化:将除源点外的所有顶点的最短距离估计值d[v]←+∞,...
分类:
其他好文 时间:
2014-07-23 14:56:26
阅读次数:
202
Description
I I
U P C
2 0
06
Problem G: Going in Cycle!!
Input: standard input
Output: standard output
You are given a weighted directed gra...
分类:
其他好文 时间:
2014-07-22 00:28:36
阅读次数:
217
我们已经知道了如何通过Dijkstra算法在非负权图中找到最短路径。即使图中有负权边,我们也知道通过Bellman-Ford算法找到一个从 给定的源点到其它所有节点的最短路径。现在我们将看到一个在线性时间内运行得更快的算法,它可以在有向无环图中找到从一个给定的源点到其它所有可达顶点的 最短路径,又名...
分类:
其他好文 时间:
2014-07-16 20:24:55
阅读次数:
199
本题其实也可以使用SPFA算法来求解的,不过就一个关键点,就是当某个顶点入列的次数超过所有顶点的总数的时候,就可以判断是有负环出现了。
SPFA原来也是可以处理负环的。
不过SPFA这种处理负环的方法自然比一般的Bellman Ford算法要慢点了。
#include
#include
#include
const int MAX_N = 501;
const int MAX_M =...
分类:
其他好文 时间:
2014-07-13 18:16:50
阅读次数:
352
本题就是需要检查有没有负环存在于路径中,使用Bellman Ford算法可以检查是否有负环存在。
算法很简单,就是在Bellman Ford后面增加一个循环判断就可以了。
题目故事很奇怪,小心读题。
#include
#include
#include
const int MAX_N = 501;
const int MAX_M = 2501;
const int MAX_W...
分类:
其他好文 时间:
2014-07-13 15:48:23
阅读次数:
212
题目大意: 给你各国的货币名称,和国家与国家之间兑换的汇率,问你通过一系列的兑换能否是自己的财富增加。解题思路: 先建图,因为给的是字符串不是阿拉伯数之间的联系,所以建图可以用mapmp 建图。赋值给结构体中的u,v。然后利用bellman—ford算法,因为如果财富能够通过兑换增值说明会有一条.....
分类:
其他好文 时间:
2014-07-11 18:24:14
阅读次数:
159