tips: 1.判断是否有负权回路 2.Bellman-ford算法 3.对每条边进行n-1次松弛 4.啊哈算法上讲的比较好,但是稍微有点错误 5.c++里的构造函数 //一直wa的原因是......每次结束后vector没有清空 //刚开始还以为是inf定义的不够大 //spfa做法可参考http ...
分类:
其他好文 时间:
2018-08-08 00:00:41
阅读次数:
211
#include<bits/stdc++.h>using namespace std;const int inf=0x3f3f3f3f;struct node{ int v,z,d,next;//存可以连接的点,用next存邻接表}a[10010];struct road{ int u,cnt,di ...
分类:
其他好文 时间:
2018-08-04 21:42:21
阅读次数:
222
最短路+判负环优点:1.判负环比较稳(相对于spfa+dfs/bfs)2.存图超简单3.Bellman-Ford枚举的是边集{E},不需要考虑不联通的区块;如果写Dijkstra或SPFA,则要考虑这种情况。缺点:专求最短路复杂度大了点O(n*m) 分3个部分:1.做n-1次循环2.每个循环中遍历所 ...
分类:
其他好文 时间:
2018-07-29 23:54:37
阅读次数:
316
题目链接: https://cn.vjudge.net/problem/POJ-1860 Several currency exchange points are working in our city. Let us suppose that each point specializes in t ...
分类:
编程语言 时间:
2018-07-28 19:38:35
阅读次数:
175
#include #include #include #include #include #include using namespace std; struct uio{ int from,to,que; }edge[1001]; int road[1001],n,m; int main() { ... ...
分类:
其他好文 时间:
2018-07-08 19:04:53
阅读次数:
120
RT P3385 【模板】负环 题目描述 暴力枚举/SPFA/Bellman-ford/奇怪的贪心/超神搜索 输入输出格式 输入格式: 第一行一个正整数T表示数据组数,对于每组数据: 第一行两个正整数N M,表示图有N个顶点,M条边 接下来M行,每行三个整数a b w,表示a->b有一条权值为w的边 ...
分类:
其他好文 时间:
2018-07-07 20:51:55
阅读次数:
151
该算法由Bellman-Ford算法演变过来,首先介绍一下Bellman-Ford算法 最短路最多经过n-1个点,可以用n-1轮松弛操作来得到 当然这个算法我没有实际应用过,而是一直在用它的优化算法,利用队列代替前面的循环检查 SPFA最坏时间复杂度仍然为O(nm),但是有人分析其时间复杂度为O(k ...
分类:
编程语言 时间:
2018-07-06 13:14:30
阅读次数:
199
题目大意:跟我上次做的那道感觉一模一样,上次链接:https://www.cnblogs.com/ducklu/p/9231563.html 解题思路:Bellman_Ford判断有无正环(对了,第一次RE了,数组要开大点,我开始只开了40) ...
分类:
其他好文 时间:
2018-06-30 19:52:01
阅读次数:
145
https://vjudge.net/problem/POJ-2240 题意 已知n种货币,以及m种货币汇率及方式,问能否通过货币转换,使得财富增加。 分析 Bellman-Ford判断正环,注意初始化时置为0。 ...
分类:
其他好文 时间:
2018-06-21 11:40:53
阅读次数:
155
dijkstra算法学习 一、最短路径 单源最短路径:计算源点到其他各顶点的最短路径的长度 全局最短路径:图中任意两点的最短路径 Dijkstra、Bellman-Ford、SPFA求单源最短路径 Floyed可以求全局最短路径,但是效率比较低 SPFA算法是Bellman-Ford算法的队列优化 ...
分类:
编程语言 时间:
2018-06-18 23:23:29
阅读次数:
251