UVA 10048 Flyod算法
来源:互联网 发布:网站源码有什么用 编辑:程序博客网 时间:2024/06/16 01:47
题意
给C个点,S条边,Q次查询。每次查询查询两个点之间边最大值最小的路径。求这个路径的边最大值。
题解
Flyod简单变形,d[i][j]=min(d[i][j],max(d[i][k],d[k][j]))即可
注意事项
输出好坑,非常容易PE。注意空行和空行输出位置!!!
代码
#include <iostream>#include<cstdio>#include<algorithm>#define INF 1e9using namespace std;int d[1010][1010];int c,s,q;void floyd(){ for(int k=1;k<=c;k++){ for(int i=1;i<=c;i++){ for(int j=1;j<=c;j++){ d[i][j]=min(d[i][j],max(d[i][k],d[k][j])); } } }}int main(){ int kase=1; while(scanf("%d%d%d",&c,&s,&q)){ if(c+s+q==0) break; for(int i=1;i<=c;i++){ for(int j=1;j<=c;j++){ d[i][j]=INF; d[j][i]=INF; } } for(int i=0;i<s;i++){ int a,b,w; scanf("%d%d%d",&a,&b,&w); d[a][b]=w; d[b][a]=w; } floyd(); if(kase-1){ printf("\n"); } printf("Case #%d\n",kase++); for(int i=0;i<q;i++){ int a,b; scanf("%d%d",&a,&b); if(d[a][b]<INF) printf("%d\n",d[a][b]); else printf("no path\n"); } } return 0;}
0 0
- UVA 10048 Flyod算法
- Flyod在算法题中的应用
- 判圈算法(Flyod、Brent's)
- UVA 10048 Audiophobia(Floyd算法)
- NEFU 208 flyod
- hdu 1217 Arbitrage Flyod
- bitsit维护的flyod
- 最短路 poj flyod
- UVA 10048 - Audiophobia(flody算法应用)
- UVa 10048 - Audiophobia(floyd算法)
- uva 10048 图论--最短路 flody算法
- 补充Flyod之记录路径
- ACM 326. 医院设置(Flyod)
- poj 3660 Cow Contest Flyod
- cdoj 30 最短路 flyod
- hud 2544 最短路 flyod
- UVA 567 Floyd算法
- UVA 1395 Kruskal算法
- mysql workbench中PK,NN,UQ,BIN,UN,ZF,AI字段类型标识说明
- Qt Graphics入门小例以及实现场景中相关项拖拽功能总结.
- 学习记录
- 记一次openstack的部署过程
- Transfer-Encoding:chunked 返回数据过长导致中文乱码
- UVA 10048 Flyod算法
- 算法导论 第六章 堆排序
- POJ3164-Command Network
- 哈工大LTP编译使用
- Android之使用HttpURLConnection连接网络
- hdoj 1027 Ignatius and the Princess II (全排列)
- 文章标题
- 为什么要Autowired和Qualifier配合使用
- Proud Merchants HDU