【题目描述】

平面上有n个点(n≤100),每个点的坐标均在-10000~10000之间。其中的一些点之间有连线。

若有连线,则表示可从一个点到达另一个点,即两点间有通路,通路的距离为两点间的直线距离。现在的任务是找出从一点到另一点之间的最短路径。

【输入】

共n+m+3行,其中:

第一行为整数n。

第2行到第n+1行(共n行) ,每行两个整数x和y,描述了一个点的坐标。

第n+2行为一个整数m,表示图中连线的个数。

此后的m 行,每行描述一条连线,由两个整数i和j组成,表示第i个点和第j个点之间有连线。

最后一行:两个整数s和t,分别表示源点和目标点。

【输出】

一行,一个实数(保留两位小数),表示从s到t的最短路径长度。

【输入样例】


0 0

2 0
2 2
0 2
3 1

1 2
1 3
1 4
2 5
3 5
1 5

【输出样例】

3.14

【源程序】

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<string>
#include<cstdlib>
#include<queue>
#include<vector>
#include<set>
#define INF 0x3f3f3f3f
#define PI acos(-1.0)
#define N 1001
#define MOD 123
#define E 1e-6
using namespace std;
int x[N],y[N];
double g[N][N];
double calculate(int x1,int y1,int x2,int y2)
{return sqrt((double)(x1-x2)*(x1-x2)+(double)(y1-y2)*(y1-y2));
}
int main()
{int n,m;cin>>n;for(int i=1;i<=n;i++)cin>>x[i]>>y[i];cin>>m;for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){g[i][j]=INF;g[j][i]=INF;}g[i][i]=0;}for(int i=1;i<=m;i++){int u,v;cin>>u>>v;double temp=calculate(x[u],y[u],x[v],y[v]);g[u][v]=temp;g[v][u]=temp;}for(int k=1;k<=n;k++)for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)if(g[i][j]>g[i][k]+g[k][j])g[i][j]=g[i][k]+g[k][j];int u,v;cin>>u>>v;printf("%.2lf",g[u][v]);return 0;
}

最短路径问题(信息学奥赛一本通-T1342)相关推荐

  1. 最短路径(信息学奥赛一本通-T1378)

    [题目描述] 给出一个有向图G=(V, E),和一个源点v0∈V,请写一个程序输出v0和图G中其它顶点的最短路径.只要所有的有向环权值和都是正的,我们就允许图的边有负值.顶点的标号从1到n(n为图G的 ...

  2. 信息学奥赛一本通 (C++)上机练习

    信息学奥赛一本通(C++)上机练习 此书为娃儿的第一本刷题书.娃儿现在四年级 ,希望他能坚持下来.特开贴加油 luogu: disangan223 第一部分 C++语言 第一章 C++语言入门 T10 ...

  3. 信息学奥赛一本通(基础算法与数据结构-题解汇总目录)

    信息学奥赛一本通(C++版)在线评测系统 基础(二)基础算法   更新中...... 第一章高精度计算 1307[例1.3]高精度乘法 1308[例1.5]高精除 1309[例1.6]回文数(Noip ...

  4. 信息学奥赛一本通_长乐一中老师演绎“奥赛传奇”

    董永建(右一)在课堂上. 台海网5月14日讯 据福州晚报报道,长乐一中有一位"传奇"老师--15年来,他辅导的学生在全国高中生信息学奥赛中获金牌3人次.银牌3人次.铜牌5人次:在全 ...

  5. 信息学奥赛一本通 提高篇 第5章 矩阵乘法

    例1 矩阵AXB 信息学奥赛一本通(C++版)在线评测系统 [矩阵乘法]矩阵A×B_Uletay-CSDN博客 矩阵乘法--矩阵A×B_vina的博客-CSDN博客 一本通1641[例 1]矩阵 A× ...

  6. 《信息学奥赛一本通提高篇》第6章 组合数学

    例1 计算系数(NOIP2011提高) 信息学奥赛一本通(C++版)在线评测系统 NOIP2011计算系数_nanhan27的博客-CSDN博客 「NOIP2011」 计算系数 - 组合数_TbYan ...

  7. 《信息学奥赛一本通 提高篇》

    提高篇 第一部分 基础算法 第1章 贪心算法 提高篇 第一部分 基础算法 第1章 贪心算法_青少年趣味编程-CSDN博客 提高篇 第一部分 基础算法 第1章 贪心算法 提高篇 第一部分 基础算法 第1 ...

  8. 信息学奥赛一本通 提高篇 第一部分 基础算法 第2章 二分与三分

    信息学奥赛一本通 提高篇 提高版 第一部分 基础算法 第2章 二分与三分 信息学奥赛一本通 提高篇 提高版 第一部分 基础算法 第2章 二分与三分_mrcrack的博客-CSDN博客_信息学奥赛一本通 ...

  9. 信息学奥赛一本通 提高篇 第六部分 数学基础 相关的真题

    第1章   快速幂 1875:[13NOIP提高组]转圈游戏 信息学奥赛一本通(C++版)在线评测系统 第2 章  素数 第 3 章  约数 第 4 章  同余问题 第 5 章  矩阵乘法 第 6 章 ...

最新文章

  1. android jks sha1,Android 获取签名文件jks的SHA1值或者SHA256的值
  2. redis 大数据插入
  3. sqlite3 C接口基础
  4. 逆向工程核心原理学习笔记(十一):栈
  5. c++检测输入是否为数字_Go64 for Mac(检测应用是否为64位)
  6. Oracle中start with xx connect by prior 语句解析
  7. HTML+CSS+JS实现 ❤️h5酷炫的天体木星动画特效❤️
  8. python搭建web服务
  9. webdriver 调用IE 问题
  10. 搬砖的也能学Python----if - elif 语句
  11. 这个 80 后 IT 男厉害了!他用北京蜗居的首付在东京海淘了一栋楼!
  12. 念念不忘,必有回响!6月更文活动的一些总结
  13. zlog日志库的简单封装,以及给debug级别添加颜色显示
  14. NRF52840开发注意
  15. 惠普m1005mfp说明书_惠普M1005使用说明
  16. 竞品分析 | 不背单词、百词斩
  17. 【无标题】免费论文查重的方法;知网也可以免费查重啦
  18. 【python实战】二:乒乓球比赛对手问题
  19. 中国云计算行业研究报告
  20. 简单的几句话让你理解”什么是备份、容灾、集群、负载均衡”

热门文章

  1. 2020下半场:10本书教会你学习、思考和生活
  2. STM32之独立看门狗原理
  3. 如果去掉数学前后的空格_数学家们是怎么玩趣味拼图游戏的?
  4. IntelliJ IDEA竟然出了可以在云端编码的功能?
  5. 分享 2 个“捷径”,帮你 6 个月达到阿里 P7 水平
  6. 面试官真是搞笑!让实现线程安全的单例,又不让使用synchronized!
  7. 瓜田老梁:FA1# 微服务流控防护场景与应对措施
  8. 58 转转技术总监骆俊武:一个核心系统 3 万多行代码的重构实战篇
  9. 腾讯总监周颢:亿级用户微信采用的架构宝典
  10. Jeecg-Boot 1.0 版本发布,基于SpringBoot+Mybatis+AntDesign快速开发平台