HDOJ 杭电1874-畅通工程(Floyd算法)
2018-5-1
我用的是floyd算法,不得不说,这个算法还是相当的优美了;
虽然说时间复杂度达到了O(n^3),但是代码还是相当简洁了!
……
对于这个题目而言,有几点需要注意的地方:
1)赋值是双向的,比如说a,b之间有一条要花费time时间的路,那么我们需要将x[a][b]与x[b][a]都赋值为time。
2)有重边:对于这种情况我们需要取最小的边。
3)如果起点和终点相同的话,输出的结果应该是0。
#include<iostream>
#define inf 0x3f3f3f3f
using namespace std;const int N = 100;
int x[N+1][N+1];
int n,m;void floyd(){int i,j,k;for (k=0;k<n;k++){for (i=0;i<n;i++){for (j=0;j<n;j++){x[i][j]=min(x[i][k]+x[k][j],x[i][j]);}}}
}int main(){int i,j,a,b,t,s,e;while (cin>>n>>m){for (i=0;i<n;i++){for (j=0;j<n;j++){x[i][j]=inf;}x[i][i]=0;}for (i=1;i<=m;i++){cin>>a>>b>>t;x[a][b]=x[a][b]<t?x[a][b]:t;x[b][a]=x[a][b]<t?x[a][b]:t;}cin>>s>>e;floyd();if (x[s][e]==inf) cout<<-1<<endl;else cout<<x[s][e]<<endl;}return 0;
}
HDOJ 杭电1874-畅通工程(Floyd算法)相关推荐
- 杭电1874畅通工程续
畅通工程续 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Subm ...
- 杭电1874畅通工程绪
畅通工程续 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Subm ...
- 杭电1232 畅通工程
Problem Description 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇.省政府"畅通工程"的目标是使全省任何两个城镇间都可以实现交通 ...
- 杭电1232畅通工程
畅通工程 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- 杭电1863畅通工程
畅通工程 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- 杭电 hdu 1874 畅通工程续
第二次 /* THE PROGRAM IS MADE BY PYY */ /*------------------------------------------------------------- ...
- HDU 1874 畅通工程续 (Dijkstra , Floyd , SPFA, Bellman_Ford 四种算法)
畅通工程续 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1874 Problem Description 某省自从实行了很多年的畅通工程计划后,终于修 ...
- hdu 1874 畅通工程续(求最短距离,dijkstra,floyd)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1874 /************************************************* ...
- HDOJ 1874 HDU 1874 畅通工程续 ACM 1874 IN HDU
MiYu原创, 转帖请注明 : 转载自 ______________白白の屋 题目地址: http://acm.hdu.edu.cn/showproblem.php?pid=1874 ...
最新文章
- RN 与原生通信(Android篇)
- sql如何获取全部的索引名称_这句简单的sql,如何加索引?颠覆了我多年的认知...
- bzoj2729: [HNOI2012]排队
- Android之判断是否有网封装类
- Angular之ngx-permissions安装入门
- hnu 暑期实训之挖掘机技术哪家强
- 冒泡排序的一次自我救赎
- WinForm与WPF下跨线程调用控件
- Java面试单点登录_单点登录面试题
- MySQL 第六章过程式数据库对象.1存储对象
- 【redis】Redis中的队列list实现秒杀活动抢购
- 示波器中的Trigger
- ISO8583包[详细说明]
- DNS安全章-拒绝服务攻击
- OpenSSL SSL_read: Connection was aborted, , errno 10053
- Java获取IP和端口(Linux)
- 基于Python实现的决策树模型
- Affinity Designer笔记:从图像创建调色板
- JAVA修炼秘籍第四章《闭关修炼》
- 聚焦2018爱思唯尔-环球科学卓越科研论坛
热门文章
- ubuntu下安装latex
- ps专业色彩调色扩展面板 Moody Photoshop Panel 1.1.2汉化版
- Mac Backup软件:不要冒险您的数据!
- P1414 又是毕业季II (80分 python3实现)
- Jenkins Gitee 实现持续集成CI/CD工具【免费、推荐】
- uni app map 地图 漂浮问题及方案
- 在html标签中写三元运算符,如何在剃须刀中使用三元运算符(特别是在HTML属性上)?...
- C语言switch制作菜单例题,c语言入门之,switch语句习题。
- BootStrap笔记-popover的使用(popover中放验证码,点击更新)
- Python笔记-利用OpenCV的matchTemplate屏幕找图并使用pyautogui点击