博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UVA 10048 Audiophobia(Floyd)
阅读量:5052 次
发布时间:2019-06-12

本文共 1113 字,大约阅读时间需要 3 分钟。

题意:从a点到b点, 找到一条路径,使得这条路径上的所有噪音中最大的值是所有路径中最小的, 这个噪音值便是要求的。

分析:直接用Flody求解,把其中的“之和”与“取最小值”换成“求最大值”和“最小值”

代码:

#include #include 
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define ll long long#define mod 1000000007#define mem(a) memset(a,0,sizeof(a))using namespace std;const int maxn = 100 + 5 , inf = 0x3f3f3f3f ;int G[maxn][maxn];main(){// freopen("in.txt","r",stdin);// freopen("out.txt","w",stdout); int n,m,cmd,a,b,c,k = 1; while(!~scanf("%d %d %d",&n,&m,&cmd),(n||m||cmd)){ memset(G,inf,sizeof(G)); for(int i = 0 ; i < m ; i ++ ){ scanf("%d %d %d",&a,&b,&c); G[a][b] = G[b][a] = c; } for(int k = 1 ; k <= n ; k ++ ) for(int i = 1 ; i <= n ; i ++ ) for(int j = 1 ; j <= n ; j ++ ) G[i][j] = min(G[i][j],max(G[i][k],G[k][j])); if(k>1) printf("\n"); printf("Case #%d\n",k++); for(int i = 1 ; i <= cmd ; i ++ ){ scanf("%d %d",&a,&b); G[a][b] == inf ? printf("no path\n") : printf("%d\n",G[a][b]); } } return 0;}

转载于:https://www.cnblogs.com/seven7777777/p/10278723.html

你可能感兴趣的文章
Linux 系统的/var目录
查看>>
Redis学习---Redis操作之其他操作
查看>>
WebService中的DataSet序列化使用
查看>>
BZOJ 1200 木梳
查看>>
【Linux】【C语言】菜鸟学习日志(一) 一步一步学习在Linxu下测试程序的运行时间...
查看>>
hostname
查看>>
SpringBoot使用其他的Servlet容器
查看>>
关于cookie存取中文乱码问题
查看>>
k8s架构
查看>>
select 向上弹起
查看>>
mysql 多表管理修改
查看>>
group by order by
查看>>
bzoj 5252: [2018多省省队联测]林克卡特树
查看>>
https 学习笔记三
查看>>
Oracle学习之简单查询
查看>>
log4j配置
查看>>
linux 配置SAN存储-IPSAN
查看>>
双链表
查看>>
java学习笔记之String类
查看>>
pymysql操作mysql
查看>>