题意: ? 思路:单源最短路问题,Dijkstra算法搞定就可以了,因为要找出最便宜的最短路,所以需要在更新最短距离的时候加一个条件(即当最短距离相等的时候,如果该路径的花费更小,就更新最小花费)就可以了。之前自己学的最短路的水平也就仅限于模板题的水平,现在可以在条件上稍微加一些变化,做了数据结构的 ...
分类:
编程语言 时间:
2018-10-02 22:16:08
阅读次数:
418
可以求得任意两点之间的最短路问题 对于Floyd算法紫书上给出了这样的提示: 如果使用Floyd算法,在定义INF的大小的时候要注意这个潜在的问题:INF不能定义的太大(如2000000000),否则d[i][k] + d[k][j]会溢出,但是如果INF定义的过小,可能会让长度为INF的边成为最短 ...
分类:
编程语言 时间:
2018-10-02 22:11:17
阅读次数:
194
第一种是不优化的dijiesitela算法,用邻接表输入。 ...
分类:
其他好文 时间:
2018-10-01 19:54:45
阅读次数:
122
题意:有n个地方,m条带权值的路,你有k次机会将一条路的权值变为0,求1到n的最短距离。 分析:这是一题分层dijkstra的模板题,因为k的大小不是很大,最坏的情况也就是10,而我们一般的最短路问题只是建一个平面的图。 而分层dijkstra是一个空间的。怎么操作呢? 举个简单的栗子 当数据如下是 ...
分类:
其他好文 时间:
2018-09-13 20:07:19
阅读次数:
213
什么是双端队列BFS? 如果你不了解双端队列 的话,请先去学习。 双端队列 又称 适用范围 边权值为可能有,也可能没有(由于 适用于权值为 $1$ 的图,所以一般是 $0$ $or$ $1$),或者能够转化为这种边权值的最短路问题。 例如在走迷宫问题中,你可以花 $1$ 个金币走 $5$ 步,也可以 ...
分类:
其他好文 时间:
2018-09-09 11:41:19
阅读次数:
903
题意:一张n个点的图,有小路和大路,走大路花费的体力值是wi,如果连续走小路,花费的体力是连续走的小路的wi的和的平方,求1到n的最少花费体力 n <= 500, m <= 1e5 大一第一次考CCF的第四题,当年真的还是个最短路都不会的超级萌萌萌萌新,抄挑战的最短路板子(毒瘤代码)骗个40分的部分 ...
分类:
其他好文 时间:
2018-09-04 20:49:15
阅读次数:
146
用途: 解决单源最短路径问题(已固定一个起点,求它到其他所有点的最短路问题) 算法核心(广搜): (1)确定的与起点相邻的点的最短距离,再根据已确定最短距离的点更新其他与之相邻的点的最短距离。 (2)之后的更新不需要再关心最短距离已确定的点 三种实现模板: 一、矩阵朴素版 二、vector简单版 三 ...
分类:
编程语言 时间:
2018-08-24 20:47:10
阅读次数:
178
题目链接: https://vjudge.net/problem/POJ-3268 One cow from each of N farms (1 ≤ N ≤ 1000) conveniently numbered 1..N is going to attend the big cow party ...
分类:
编程语言 时间:
2018-08-06 12:59:19
阅读次数:
128
0-1BFS问题是指最短路问题中,边权只有 0 和 1 的特殊情况。写法类似 SPFA + SLF(Small Label First) 优化。需要一个 deque 。把权值 0 的边扩展到的点放到队首,权值 1 的边扩展到的点放到队尾。 这好像是个挺重要的知识点,有很多可以用 0-1BFS 解决的 ...
分类:
其他好文 时间:
2018-08-01 20:50:15
阅读次数:
228
题目链接: https://cn.vjudge.net/problem/POJ-1724 N cities named with numbers 1 ... N are connected with one-way roads. Each road has two parameters associ ...
分类:
其他好文 时间:
2018-07-28 20:33:11
阅读次数:
208