随笔分类 - 5.05.0 最短路
摘要:最短路 + 矩阵快速幂 我们可以改进矩阵快速幂,使得它适合本题 用图的邻接矩阵和快速幂实现 注意 dis[i][i] 不能置为 0 cpp include include include include include include using namespace std; struct edge
阅读全文
摘要:最短路 因为有负权边,所以不能 dijkstra ,本题数据还卡 SPFA 但是我们发现,有负权的都是有向边,而且如果把无向边连成的联通块看成一个点的话,有向边就连成了一个 DAG,所以我们可以对所有的联通块用dij求最短路 在 DAG上用拓扑序求最短路 注意: 堆优化的 Dijkstra 在定义的
阅读全文
摘要:二分答案 首先,最大值最小,就是二分答案 cpp include include include include include include include using namespace std; const int MAXN = 10005; int head[MAXN], nume, n,
阅读全文
摘要:题目略带一点贪心的思想,先跑三遍最短路(边权为一,BFS比SPFA高效) 一起跑总比分开跑高效,枚举两人在何点汇合,输出最小值。 include include include include include include using namespace std; const int MAXN=4
阅读全文
摘要:题目中的表述很明显是一道二分答案+最短路的题目,二分收取的费用x判断能否到达奥格瑞玛。检验函数用SPFA跑最短路,注意,费用高于x的点不能使用。 include include include include include include using namespace std; const in
阅读全文
摘要:我们发现每次询问都是对于任意两点的,所以这是一道多源最短路径的题,多源最短路径,我们首先想到floyd,因为询问的时间是不降的,所以对于每次询问,我们将还没有进行松弛操作的的点k操作。 include include include include include include using nam
阅读全文

浙公网安备 33010602011771号