Kruskal Prim DJ: Spfa Trie: LCA( bz ) Treearray: Treearraycf: RMQ: Invfm: Invexgcd: Invdt: Tyfc: bdfc: CRT: jzqsm: ...
分类:
其他好文 时间:
2019-09-29 23:44:34
阅读次数:
92
```cpp include include include include include define int long long using namespace std; const int N=6e4+10,M=4e5+10,inf=1rhs.d; } }; priority_queueq; ...
分类:
其他好文 时间:
2019-09-29 20:18:55
阅读次数:
91
写在前面 学习算法的日子又到了~~ Idea? 提供以下几种方法 暴搜 输出 (是的,输出 ) 有算法的暴力 $Dijkstra$ $Dijkstra$的本质是贪心,复杂度为$O(n^2)$,堆优化后为$O((m+n) \log (m+n))$ $SPFA$ 学长说最好不要用,因为 它死了 $A^\ ...
本篇博客只讲思路,总结经验,不适于作为新手零基础学习的材料。 关于负权回路,一般有2种主流算法:spfa与bellman。 spfa判负环: 1、bfs版:即最基础的spfa判负环。有多种判定条件:当一个路径上的节点数大于n时;当某个点的入队次数大于n-1时。最差复杂度O(nm) 2、dfs版:基于 ...
分类:
编程语言 时间:
2019-09-22 16:40:40
阅读次数:
118
何老板最近在玩一款游戏,游戏虽然简单,他仍旧乐此不疲。 游戏地图由n个关卡构成,关卡编号1到n。起点在1号关卡,终点在n号关卡。 关卡间通过m条有向道路相连,每条道路都有一个分值,表示每经过一次该道路,玩家都将获得对应分值。 何老板想知道,他操控游戏角色从起点走到终点,最多能得多少分?请你帮忙计算! ...
分类:
其他好文 时间:
2019-09-22 01:07:29
阅读次数:
90
9.13总结 得分情况 35+30+100=165 Rank2 第二题SPFA被卡了!! T1 在DFS序上dp。 设f[i]\[j]表示当前放了i个点,所在的位置x是DFS序最大的那一个,根到x走了j步。 于是有两种转移,就是x新增一个左儿子(此时j+1),或者是找一个dfs序最大,有左儿子但没有 ...
分类:
其他好文 时间:
2019-09-13 17:55:31
阅读次数:
78
Spfa $Spfa$ 算法的全称是: $Shortest$ $Path$ $Faster$ $Algorithm$ ,是 $Bellman Ford$ 算法的队列优化算法的别称,通常用于求含负权边的单源最短路径,以及判负权环。 基本原理 设立一个先进先出的队列用来保存待优化的结点,优化时每次取出队 ...
分类:
其他好文 时间:
2019-09-12 21:31:47
阅读次数:
92
题意::问一个图是否存在负环,虫洞一边的权值为负 思路: dfs版spfa判环根据:若一个节点出现2次及以上,则存在负环.(你可以假想一下,当一个点被搜过时,再次深搜的话还能搜索到那不就说明存在负环嘛可能解释的不好,请见谅) {补充bfs版本:若一个节点入队列的次数超过n,则存在负环.} 如果是bf ...
分类:
其他好文 时间:
2019-09-10 17:35:45
阅读次数:
57
适用范围 单源最短路(可判负圈). 原理 Bellman-Ford算法核心思想:动态规划.d[i]的定义为起点s到第i个点的最短距离.刚开始d[i]数组初始化为INF,d[s]=0.然后遍历所有的边,把所有能更新的点更新一遍,能更新的点判定条件为d[to]>d[from]+w(边权),能更新则更新为 ...
分类:
编程语言 时间:
2019-09-08 20:02:54
阅读次数:
105