HDU-2544,最短路(Floyd)

简介: HDU-2544,最短路(Floyd)

Problem Description:


在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt。但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要寻找最短的从商店到赛场的路线,你可以帮助他们吗?


Input:


输入包括多组数据。每组数据第一行是两个整数N、M(N<=100,M<=10000),N表示成都的大街上有几个路口,标号为1的路口是商店所在地,标号为N的路口是赛场所在地,M则表示在成都有几条路。N=M=0表示输入结束。接下来M行,每行包括3个整数A,B,C(1<=A,B<=N,1<=C<=1000),表示在路口A与路口B之间有一条路,我们的工作人员需要C分钟的时间走过这条路。

输入保证至少存在1条商店到赛场的路线。


Output:


对于每组输入,输出一行,表示工作人员从商店走到赛场的最短时间。


Sample Input:


2 1


1 2 3


3 3


1 2 5


2 3 5


3 1 2


0 0


Sample Output:


3


2


程序代码:


#include<stdio.h>
#include<string.h>
#define INF 0x3f3f3f
int n,m,map[110][110];
void Floyd()
{
    int i,j,k;
    for(k=1;k<=n;k++)
        for(i=1;i<=n;i++)
            for(j=1;j<=n;j++)
                if(map[i][j]>map[i][k]+map[k][j])
                    map[i][j]=map[i][k]+map[k][j];
}
int main()
{
    int u,v,w;
    while(scanf("%d %d",&n,&m)!=EOF)
    {
        if(n==0&&m==0)
            break;
        for(int i=1;i<=n;i++)
        {
            for(int j=1;j<=n;j++)
            {
                if(i==j)
                    map[i][j]=0;
                else
                    map[i][j]=INF;
            }
        }
        for(int i=0;i<m;i++)
        {
            scanf("%d %d %d",&u,&v,&w);
            if(map[u][v]>w)
                map[u][v]=map[v][u]=w;
        }
        Floyd();
        printf("%d\n",map[1][n]);
    }
    return 0;
}


相关文章
|
SQL 弹性计算 关系型数据库
转 PostgreSQL 认证考试(商业版本EDB enterpriseDB认证考试) 指南
标签 PostgreSQL , 认证 , edb 背景 转一篇华军写的认证指南。想考PG认证的小伙伴可以参考。 原文 https://yq.aliyun.com/articles/464038 1. 背景 因为工作的原因,需要考一个PostreSQL技术认证。经过一些准备,终于在今年的3月和5月参加并通过了EnterpriseDB的Associate和Professional认证
3699 0
转 PostgreSQL 认证考试(商业版本EDB enterpriseDB认证考试) 指南
|
Go
Golang语言之gRPC程序设计示例
这篇文章是关于Golang语言使用gRPC进行程序设计的详细教程,涵盖了RPC协议的介绍、gRPC环境的搭建、Protocol Buffers的使用、gRPC服务的编写和通信示例。
620 3
Golang语言之gRPC程序设计示例
|
存储 监控 安全
什么是事件日志管理系统?事件日志管理系统有哪些用处?
事件日志管理系统是IT安全的重要工具,用于集中收集、分析和解释来自组织IT基础设施各组件的事件日志,如防火墙、路由器、交换机等,帮助提升网络安全、实现主动威胁检测和促进合规性。系统支持多种日志类型,包括Windows事件日志、Syslog日志和应用程序日志,通过实时监测、告警及可视化分析,为企业提供强大的安全保障。然而,实施过程中也面临数据量大、日志管理和分析复杂等挑战。EventLog Analyzer作为一款高效工具,不仅提供实时监测与告警、可视化分析和报告功能,还支持多种合规性报告,帮助企业克服挑战,提升网络安全水平。
524 2
|
数据采集 人工智能 分布式计算
探索 MaxCompute MaxFrame:AI 数据预处理的高效之选
探索 MaxCompute MaxFrame:AI 数据预处理的高效之选
|
域名解析 网络协议 虚拟化
vmware 提供的三种网络工作模式
本文介绍了VMware虚拟机的三种网络工作模式:Bridged(桥接模式)、NAT(网络地址转换模式)和Host-Only(仅主机模式)。桥接模式将虚拟机与主机通过虚拟网桥连接,实现与物理网络的直接通信;NAT模式通过虚拟NAT设备和DHCP服务器使虚拟机联网;Host-Only模式则将虚拟机与外网隔离,仅与主机通信。此外,文章还简要介绍了网络相关的基础知识,包括主机名、IP地址、子网掩码、默认网关和DNS服务器。
728 4
|
机器学习/深度学习 搜索推荐 UED
推荐系统专题 | MiNet:跨域CTR预测
推荐系统专题 | MiNet:跨域CTR预测
682 0
推荐系统专题 | MiNet:跨域CTR预测
|
网络协议 Linux API
Linux异步IO之 io_uring 详解及使用代码示例
Linux异步IO之 io_uring 详解及使用代码示例
|
存储 移动开发 小程序
DingTalk「开发者说」|钉钉小程序开发实践
摘要:DingTalk「开发者说」是专为钉钉开发者打造的栏目,分享钉应用开发的实战技巧、技术架构、解决方案,致力于成为钉钉与开发者的连接桥梁。本篇分享主要内容包含移动端Web的特点,钉钉小程序的优势,钉钉小程序开发原则,开发中常见的问题,以及钉钉小程序未来规划。 分享人:宵何,钉钉小程序开发工具及研发链路技术负责人
73425 5
DingTalk「开发者说」|钉钉小程序开发实践
|
Web App开发 JavaScript 中间件
高版本Chrome VUE页面播放RTSP实时视频流,并抓图、录像、回放、倍速等
因为项目上需要把海康威视摄像头集成到WEB网页中播放,于是开始了对WEB播放摄像头方案的各种折腾。 2015年之前还可以用VLC原生播放器在Chrome、Firefox等浏览器中直接播放,延迟比较低,效果也还不错。可惜好景不长,从 2015年Chrome、Firefox等浏览器取消了对 NPAPI插件的支持,海康威视官方提供的 web3.0开发包也只能在低版本浏览器播放。
1222 1