题目

一个图,输出从k点到每个点的最短路

输入

第一行有两个整数n和k,中间用空格隔开;以下是一个NxN的矩阵,表示点间的距离。
3 1
0 3 1
3 0 2
1 2 0

输出

输出点k到各点的距离
3 0 2


解题思路

用Dijkstra算法,注意点号是0到n-1。


代码

#include<cstdio>
#include<iostream>
using namespace std;
int n,t,s,a[101][101],lowa[101],k;
bool mark[101];
int main()
{scanf("%d%d",&n,&k);k++;//修正号for (int i=1;i<=n;i++)for (int j=1;j<=n;j++) {scanf("%d",&a[i][j]);if (a[i][j]==0 || a[i][j]==-1) a[i][j]=233333333;//输入}for (int i=1;i<=n;i++) {lowa[i]=a[k][i];mark[i]=false;//每个点到点k的直接路}int u=1,mins=233333333;mark[k]=true;//标记while (u!=0){mins=233333333;u=0;for (int i=1;i<=n;i++)if (!mark[i] && lowa[i]<mins){   u=i;mins=lowa[i];//求到集合1的最短路径}mark[u]=true;//封路if (u!=0)//如果找到了点for (int i=1;i<=n;i++)if (!mark[i] && lowa[u]+a[u][i]<lowa[i]){lowa[i]=lowa[u]+a[u][i];//修正每个点的最短路}}   for (int i=1;i<=n;i++) if (i==k) printf("0 ");else if (lowa[i]<233333333) printf("%d ",lowa[i]);else printf("-1 ");//输出
}

ssl1761-城市问题【图论,最短路,Dijkstra】相关推荐

  1. 图论-最短路Dijkstra算法详解超详 有图解

    整体来看dij就是从起点开始扩散致整个图的过程,为什么说他稳定呢,是因为他每次迭代,都能得到至少一个结点的最短路.(不像SPFA,玄学复杂度) 但是他的缺点就是不能处理带负权值的边,和代码量稍稍复杂. ...

  2. 图论 —— 最短路 —— Dijkstra 算法

    [概述] Dijkstra 算法是单源最短路径算法,即计算起点只有一个的情况到其他点的最短路径,其无法处理存在负边权的情况. 其时间复杂度是:O(E+VlogV) [算法分析] 将点分为两类,一类是已 ...

  3. 图论--最短路-- Dijkstra模板(目前见到的最好用的)

    之前的我那个板子,老是卡内存,不知道为什么,我看别人过的那个题都是结构体,我就开始对自己板子做了修改,然后他奶奶的就过了,而且速度也提高了,内存也小了.(自从用了这个板子,隔壁小孩馋哭了)也不知道为啥 ...

  4. bzoj4144 [AMPPZ2014]Petrol 图论 最短路 并查集

    bzoj4144 [AMPPZ2014]Petrol 图论 最短路 并查集 1.这道题我们主要就是要求出距离一个油站的最近的油站 首先我们dijkstra 求出任意一个点到 离他最近的油站的距离 2. ...

  5. 图论最短路:Bellman-Ford与其优化SPFA算法的一点理解

    文章目录 前言 一.对Bellman-Ford的深入理解 1. Bellman-Ford有什么用? 2. 什么是松弛操作? 3. Bellman-Ford的k次迭代意义? 4. 一个重要定理 5. 对 ...

  6. 【挑战程序设计】- 2.5 图论(最短路、最小生成树)

    2.5 图论(最短路.最小生成树) 文章目录 2.5 图论(最短路.最小生成树) 2.5.1 定义们 2.5.2 图的表示 2.5.3 图的搜索 2.5.4 最短路问题 单源1:bellman-for ...

  7. 【图论-最短路变形】想越狱的小杉

    [图论-最短路变形]想越狱的小杉 Time Limit:1000MS  Memory Limit:65536K Description 背景 Background 这次小杉来到了经典美剧<越狱& ...

  8. 单源最短路 Dijkstra算法 和 SPFA算法

    单源最短路 •从一个点出发,到达其他顶点的最短路径的长度. •基本操作:松弛 •d[u]+map[u, v]< d[v]这样的边(u,v)称为紧的(tense),可以对它进行松弛(relax): ...

  9. 最短路 dijkstra模板

    最短路 dijkstra模板 #pragma warning(disable:4996) #include<iostream> #include<string> #includ ...

  10. HDOJ 2112 HDU Today (最短路 Dijkstra SPFA)

    HDU Today Time Limit: 15000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total ...

最新文章

  1. 命主属性是水什么意思_涧下水命是什么水 涧下水命的含义(图文)
  2. 软考信息系统项目管理师_信息化与信息系统3_软件工程_新一代信息技术---软考高级之信息系统项目管理师005
  3. 11.大数据架构详解:从数据获取到深度学习 --- 大数据云化
  4. iOS多线程:『GCD』详尽总结
  5. 'C'is not a valid file-based resource name character: File-based resource names must contain onl解决方法
  6. mac matlab破解
  7. DWM1000DISCOVERY开发板简介
  8. java中md5加密和解密_java的MD5加密与解密
  9. H5app 调用手机摄像头拍照、录制视频并上传demo
  10. 媒体查询简单应用——网页字体自适应窗口大小
  11. opencv学习 给视频添加文字
  12. P2627 [USACO11OPEN]Mowing the Lawn G(单调队列)
  13. 使用动态规划求解算法问题的五大特点总结(附基于Python的参考代码)
  14. 算法模型---关联规则挖掘学习
  15. c语言双精度浮点数,使用C语言的十进制(浮点数,双精度)
  16. 匈牙利算法编程c语言,华为oj之素数伴侣---匈牙利算法
  17. C++primer学习:关于upper_bound和lower_bound的探究.
  18. html5作品答辩,HTML5答辩问题总结
  19. 全国每年计算机专业毕业生有多少,计算机专业国内就业分析
  20. 人工智能领域技术,主要包含了哪些核心技术?

热门文章

  1. systrace html空白,Android性能优化之Systrace工具介绍(一) _ Systrace生成的trace.html打开空白或者打不开的解决办法...
  2. jpa 根据主键生成策略获取id_如何在使用JPA和Hibernate时选择id生成策略
  3. ofdm解调算法_OFDM系统中固定频偏算法
  4. as本地仓库更改_将gitee仓库连接GitHub Desktop。新建更改仓库并上传至gitee。
  5. 在服务器系统怎么设置地址怎么办,路由器怎么设置地址
  6. java 中符号_谁能告诉我java中符号的用法,见代码
  7. python os system_python中os. popen system的区别
  8. 算法设计与分析——算法思想总结
  9. php yaf smarty,Yaf 结合用户自定义的视图(模板)引擎Smarty(Yaf + Smarty)
  10. [JavaWeb-MySQL]多表查询(内连接,外连接,子查询)