最短路径
最短路径
jpphy0
算法是存在的
展开
-
hdu 1217 Arbitrage(spfa负圈)
@ 问题 hdu 1217 Arbitrage - https://acm.hdu.edu.cn/showproblem.php?pid=1217 分析 从s出发回到s,大于1即可 代码 #include<bits/stdc++.h> using namespace std; const int MXN = 35; int n, m, tot, head[MXN], inq[MXN]; double dis[MXN]; struct Edge{ int to, nxt; double dis原创 2021-09-20 13:01:06 · 131 阅读 · 0 评论 -
hdu 1317 XYZZY(spfa+最长路)
目录问题分析代码 问题 hdu 1317 XYZZY - https://acm.hdu.edu.cn/showproblem.php?pid=1317 分析 spfa最长路 正圈的贡献不能忽略 中途某两个房间能不能成功要判断 最终能否到达终点要判断 正圈的断定是要通过入队出队次数判断,不能以更新次数为依据,因为重边的原因,更新次数与圈的关系不确定 正圈上的任意顶点一定可以达到 inf,因此一旦认为正圈上的点,则赋值 inf 代码 #include<bits/stdc++.h> using原创 2021-09-19 09:01:43 · 120 阅读 · 0 评论 -
HDU 2112 - HDU Today (优先队列)
目录问题分析代码 问题 HDU 2112 HDU Today - https://acm.hdu.edu.cn/showproblem.php?pid=2112 分析 题目描述是“从s到e的时间”,但实际代码是“s与e”间,因此是无向图 代码 方法一:邻接矩阵 + 优先队列 #include<bits/stdc++.h> using namespace std; #define MXLOC 160 #define MXLEN 35 #define pii pair<int, in原创 2021-07-21 09:52:12 · 125 阅读 · 0 评论 -
HDU 2544 最短路
最短路 http://acm.hdu.edu.cn/showproblem.php?pid=2544 分析 floyd 1 设路径:3→4→7→8→53\rightarrow4\rightarrow7\rightarrow8\rightarrow53→4→7→8→5 是(3,5)的最短路径,则有 路径上任取两点,这两点间的路径是这两点的最短路径 路径上的顶点的任意排列作为遍历的序,都能按Floyd的三重循环算法得到这些最短路径,例如:遍历序为:8,7,4,5,3,则依次得到: (7,5); (4,原创 2021-06-02 19:00:42 · 157 阅读 · 3 评论 -
poj 3894 迷宫问题
迷宫问题 http://poj.org/problem?id=3984 代码 // poj 3894 迷宫问题 //#include<bits/stdc++.h> #include<cstdio> #include<cstring> #include<iostream> #include<queue> using namespace std; int dx[4]={1, 0, -1, 0}, dy[4]={0, 1, 0, -1}; int vis原创 2021-06-01 16:06:06 · 112 阅读 · 0 评论 -
HDU 2066 一个人的旅行
一个人的旅行 http://acm.hdu.edu.cn/showproblem.php?pid=2066 分析 最短路径 一对多,虚拟终点 代码 O(n2)【31MS】 // hdu 2066 一个人的旅行 #include<bits/stdc++.h> using namespace std; #define MAXN 1005 #define inf 0x3f3f3f3f int Map[MAXN][MAXN], vis[MAXN], dis[MAXN]; int main(){原创 2021-06-01 10:08:28 · 229 阅读 · 0 评论