uva 10048 - Audiophobia(floyd 的变形)
2015-09-16 22:20
363 查看
把Floyd算法变一下形就可以了
#include <iostream> #include <algorithm> #include <cstdio> #include <cstring> #include <cstdlib> using namespace std; const int maxn = 100+10; const int INF = 0x7fffffff; int m, n, qu; int d[maxn][maxn]; void floyd() { for(int k = 1; k <= n; ++k) for(int i = 1; i <= n; ++i) for(int j = 1; j <= n; ++j) d[i][j] = min(d[i][j], max(d[i][k], d[k][j])); //变形 } int main() { int CASE = 0; while(scanf("%d%d%d", &n, &m, &qu) != EOF && m && n && qu) { int a, b, c; for(int i = 0; i < 103; ++i) for(int j = 0; j < 103; ++j) d[i][j] = INF; for(int i = 0; i < m; ++i) { scanf("%d%d%d", &a, &b, &c); d[a][b] = c; d[b][a] = c; } floyd(); int q, w; if(CASE != 0) printf("\n"); printf("Case #%d\n", ++CASE); for(int i = 0; i < qu; ++i) { scanf("%d%d", &q, &w); if(d[q][w] == INF) printf("no path\n"); else printf("%d\n", d[q][w]); } } return 0; }
相关文章推荐
- R-CNN实现物体检测网站
- Linux系统资源指令漫记
- Linux kernel (without create_proc_entry func) Proc文件系统的实例
- 在本地如何使用phpMyAdmin访问远程Linux上MySQL数据库
- linux debian jessie下安装fcitx输入法
- 史上最经典的Linux内核学习方法论
- Nginx+Django+Uwsgi+php
- CentOS7上安装PostgreSQL
- shell 脚本之ping 命令同时打印时间
- Hbase shell 操作数据库常用命令
- linux-计划任务
- 架构规划篇
- [LeetCode] Expression Add Operators
- Linux上-DNS(bind)搭建2015091601
- 程序猿常用的好网站!
- windows下通过Runtime.getRuntime().exec.()执行linuxshell脚本
- CentOS7安装JDK
- Linux (Ubuntu/deepin等)终端命令安装Lamp
- sqlplus与shell互相传值的几种情况
- Linux java + apache mina + maven 实现高并发服务器