hdu-1874 畅通工程续 最短路径问题

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1874
弗洛伊德最短路径问题
代码:
#include<stdio.h>
#include<string.h>
#define inf 0x3f3f3f3f
#include<algorithm>
using namespace std;
int map[300][1010];
int main(){
    int i,j,k,t;
    int n,m,a,b,value,start,end;
    while(~scanf("%d %d",&n,&m)){
      for(i=0;i<n;i++)
        for(j=0;j<n;j++)
           map[i][j]=inf;
       for(i=0;i<m;i++){
          scanf("%d %d %d",&a,&b,&value);                
          if(map[a][b]>value)
             map[a][b]=map[b][a]=value;
       }                     
       for(k=0;k<n;k++){
           for(i=0;i<n;i++){
              for(j=0;j<m;j++)                 
                map[i][j]=min(map[i][j],map[i][k]+map[k][j]);
           }                 
       }              
       scanf("%d %d",&start,&end);
       if(start==end)
          printf("0\n");
       else if(map[start][end]==inf)
          printf("-1\n");
       else
          printf("%d\n",map[start][end]);
}
return 0;    
}

posted @   wojiaohuangyu  阅读(2)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示