HDOJ1874 ( 畅通工程续 ) 【单源最短路径】

简介:
Code Render Status : Rendered By HDOJ C++ Code Render Version 0.01 Beta
复制代码
 1 /*Dijstra*/
 2 #include <iostream>
 3 #include <cstring>
 4 #include <cstdlib>
 5 using namespace std;
 6 #define MAX 0x3f3f3f3f
 7 #define max 202
 8 int map[max][max],visited[max];
 9 
10 int main()
11 {
12     int n,m,i,j,a,b,d;
13     while(cin>>n>>m)
14     {
15         memset(map,MAX,sizeof(map));
16         for(i=0;i<n;i++)
17         {
18             visited[i]=0;//访问标志位
19             map[i][i]=0;//注意
20         }
21         while(m--)
22         {
23             cin>>a>>b>>d;
24             if(map[a][b]>d) map[a][b]=map[b][a]=d; /*注意可能会有多条路*/
25         }
26         cin>>a>>b;//s 和 t
27         int min,u;
28         visited[a]=1;
29         for(i=0;i<n;i++)
30         {
31             min=MAX;
32             for(j=0;j<n;j++)
33             {
34                 if(!visited[j]&&min>map[a][j])//j没有被访问,且和a之间的距离最短,记录为u
35                 {
36                     min=map[a][j];//min为a到j的距离
37                     u=j;
38                 }
39             }
40             visited[u]=1;//u被访问了
41             for(j=0;j<n;j++)//更新a的邻接点
42             {
43                 if(!visited[j]&&min+map[u][j]<map[a][j])//j没有被访问,并且min+map[u][j]<map[a][j]
44                     map[a][j]=min+map[u][j];
45             }
46         }
47         if(map[a][b]<MAX)    cout<<map[a][b]<<endl;
48         else  cout<<"-1"<<endl;
49     }
50     return 0;
51 }
复制代码

 

本文转自ZH奶酪博客园博客,原文链接:http://www.cnblogs.com/CheeseZH/archive/2012/05/24/2517226.html,如需转载请自行联系原作者

相关文章
|
10月前
|
负载均衡 Java 持续交付
深入解析微服务架构中的服务发现与负载均衡
深入解析微服务架构中的服务发现与负载均衡
499 7
|
数据可视化 安全 Cloud Native
AntV 你的保姆级数据可视化解决方案
AntV 你的保姆级数据可视化解决方案
1192 0
|
定位技术 iOS开发
iOS iPhone 修改手机定位虚拟定位
iOS iPhone 修改手机定位虚拟定位
iOS iPhone 修改手机定位虚拟定位
|
存储 NoSQL Java
OTS(Table Store)
OTS(Table Store)是阿里云提供的分布式NoSQL数据库服务,支持海量结构化数据的存储、查询和分析。OTS具有高可用、高性能、高扩展性和低成本等特点,适用于各种场景下的数据存储和处理,例如电商、物流、游戏等。
6182 2
|
存储 监控 物联网
InfluxDB 的优缺点,哪些应用场景
InfluxDB是一种专门用于处理和存储时间序列数据的开源数据库。以下是InfluxDB的一些优点和缺点,以及适用的应用场景: 优点: 1. 高性能:InfluxDB在设计上针对时间序列数据进行了优化,具有高写入和高查询性能,可以处理大规模的数据量。 2. 简单易用:InfluxDB具有简单的数据模型和查询语言,易于上手和使用。其查询语言InfluxQL和新版本的Flux具有强大的查询和聚合功能。 3. 数据压缩:InfluxDB通过使用时间序列数据的特性进行数据压缩,可以有效地减小数据存储的大小。 4. 可扩展性:InfluxDB支持水平扩展,可以通过添加更多的节点来增加存储和查询能力。
4223 0
|
机器学习/深度学习 并行计算 PyTorch
轻量级网络——ShuffleNetV2
轻量级网络——ShuffleNetV2
1118 0
轻量级网络——ShuffleNetV2
|
关系型数据库 MySQL 数据库
sysbench测试mysql的QPS值
sysbench测试mysql的QPS值
3276 0