题目描述
平面上有n个点(n<=100),每个点的坐标均在-10000~10000之间。其中的一些点之间有连线。若有连线,则表示可从一个点到达另一个点,即两点间有通路,通路的距离为两点间的直线距离。现在的任务是找出从一点到另一点之间的最短路径。
输入
第1行:1个整数n
第2…n+1行:每行2个整数x和y,描述了一个点的坐标
第n+2行:1个整数m,表示图中连线的数量
接下来有m行,每行2个整数i和j,表示第i个点和第j个点之间有连线
最后1行:2个整数s和t,分别表示源点和目标点
输出
第1行:1个浮点数,表示从s到t的最短路径长度,保留2位小数
样例输入
5
0 0
2 0
2 2
0 2
3 1
5
1 2
1 3
1 4
2 5
3 5
1 5
样例输出
3.41

#include<iostream>
#include<cmath>
using namespace std;
struct p
{int x,y;
}a[102];//这个结构体是存平面直角坐标系的
int f[102][102];
double k[102][102];
int main()
{int b,e;
int n;
cin>>n;for(int i=1;i<=n;i++)cin>>a[i].x>>a[i].y;int m;cin>>m;for(int i=1;i<=m;i++){int x,y;cin>>x>>y;f[x][y]=f[y][x]=1;//邻接数组标记}
cin>>b>>e;for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)if(f[i][j])//如果两点有连接k[i][j]=sqrt(pow((double)(a[i].x-a[j].x),2.0)+pow((double)(a[i].y-a[j].y),2.0));//求两点距离,存入k数组elsek[i][j]=0x7fffffff;//反之则设为极大值for(int p=1;p<=n;p++)for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)if(k[i][j]>k[i][p]+k[p][j])k[i][j]=k[i][p]+k[p][j];//开始算法
cout<<k[b][e];//输出从起点(b)到终点(e)的最短路径system("pause");return 0;
}

最短路径(floyed)相关推荐

  1. 最短路径floyed算法python

    # -*- coding = utf-8 -*- # @Time : 2022/4/7 23:14 # @Author : Joker wang # @File: Floyed # @Software ...

  2. 【最短路径】之Dijkstra算法

    最短路径 单源最短路径:计算源点到其他各顶点的最短路径的长度 全局最短路径:图中任意两点的最短路径 Dijkstra.Bellman-Ford.SPFA求单源最短路径 Floyed可以求全局最短路径, ...

  3. 最短路径--Dijkstra(狄克斯特拉)算法

    最短路径 路径的概念:       在一个无权的图中,若从一顶点到另一顶点存在着一条路径,则称该路径长度为该路径上所经过的边的数目,它等于该路径上的顶点数减 1 .        由于从一顶点到另一顶 ...

  4. dijkstra算法学习

    dijkstra算法学习 一.最短路径 单源最短路径:计算源点到其他各顶点的最短路径的长度 全局最短路径:图中任意两点的最短路径 Dijkstra.Bellman-Ford.SPFA求单源最短路径 F ...

  5. 操作系统/LINUX/数据库/算法/设计模式/HR面试题集锦

    文章目录 操作系统 1.操作系统特点 2.什么是进程 3.进程 4.进程与线程的区别 5.进程状态转换图 6.进程的创建过程?需要哪些函数?需要哪些数据结构? 7.进程创建子进程,fork详解 8.子 ...

  6. 第 6章 图——数据结构

    1.图的定义 图是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为:   G=(V,E) 其中:G表示一个图,V是图G中顶点的集合,E是图G中顶点之间边的集合. 在线性表中,元素个数可以为零,称 ...

  7. 蓝桥杯——基础练习——逗志芃的暴走

    问题描述 逗志芃是有妹子的现充,但是有时候妹子就是烦恼.因为逗志芃太逗了,所以这段时间妹子对逗志芃发动了技能无理取闹,妹子要去玩很多的景点.由于逗志芃之前抽机花费了太多的时间,不久以后又要微积分考试了 ...

  8. 集训前一周(乌鸦坐飞机)

    以下内容来自:老刘上课开的飞机.课本 感谢:刘神.岳神.吾大海亮 为准备即将到来的激动人心的集训,刘神强行给我们拉进度条,半天上(据说)人家一个月课程,这飞机坐的我(贼爽) 虽然老师一再强调不用担心, ...

  9. 算法实验--主函数只有五行的Floyed的算法以及最短路径输出

    Floyed算法 原理: Floyed-Warshall 算法用来找出每对点之间的最短距离.它需要用邻接矩阵来储存边,这个算法通过考虑最佳子路径来得到最佳路径. 点 i 到点 j 的距离 :dista ...

  10. 【Floyed】廉价最短路径

    廉价最短路径 题目大意: 一个图中,在满足最短路的前提下,求最小代价 原题: 题目描述 图是由一组顶点和一组边组成的.一条边连接两个顶点.例如,图1表示了一个有4个顶点V.5条边的图.图中,每条边e是 ...

最新文章

  1. STM32添加项目所需要的工程文件
  2. leetcode算法题--仅仅反转字母
  3. 【Python-ML】神经网络激励函数-双曲正切(hyperbolic tangent,tanh)函数
  4. C语言 · 黑色星期五
  5. 【渝粤题库】广东开放大学 Java高级编程技术 形成性考核
  6. VS配合VSS时,编译报错:未能向文件“....csproj.FileListAbsolute.txt”写入命令行,对路径的访问被拒绝。...
  7. 小学毕业java_Java运算符
  8. koa 的 Context
  9. 开课吧9.9元学python靠谱吗-开课吧的python课程怎么样,值得报名吗?
  10. Caffe学习:Blobs, Layers, and Nets
  11. 步进电机基础(6.4)-步进电机的特性测量方法-暂态(阻尼)特性的测量和噪音和振动的测量
  12. adt变频器故障代码ol2_英威腾变频器故障代码表
  13. [渝粤教育] 中央财经大学 宏观经济学 参考 资料
  14. 矿大计算机 学硕专硕,【20考研】超详细对比,学硕专硕如何选,不懂的学弟学妹快进来看...
  15. JavaFX Scene Builder 2.0 + IDEA 制作客户端界面
  16. 1645. Hopper Company Queries II
  17. 【信号去噪】基于改进的阈值高斯脉冲信号去噪含Matlab源码
  18. MySQL 异常错误码使用 及 对照表 DataException
  19. 圆柱体的投影特点_环形屏幕投影技术的特点和优势
  20. 使用JSONArray遇到的字符串转义问题

热门文章

  1. HP 打印机驱动安装Return code:1603解决办法
  2. pytorch加载预训练 加载部分参数
  3. 相机自动对焦 OpenCV 图像清晰度评价
  4. 目标检测 最新源码大放送
  5. 'utf-8' codec can't decode byte 0xd5 in position 0: invalid continuation byte
  6. ‘Series‘ object has no attribute ‘sort‘
  7. C++ MFC控制台输出调试信息
  8. 编译android.mk
  9. OpenCV 使用方向梯度直方图估计图像旋转角度
  10. npoi css,NPOI颜色对照表