题意:求出两点之间所有路径最大权值的最小值。

  思路:转变一下Floyd的形式即可;

  注意:注意初始化问题,还有UVA奇葩的输出形式。

  代码如下:

  1. #include<iostream>
  2. #include<cstdio>
  3. #include<cstring>
  4. #include<string>
  5. #include<map>
  6. using namespace std;
  7. #define inf 0x3f3f3f
  8. int dp[][];
  9. int main()
  10. {
  11. int n,m,q,a,b,w,ca = ;
  12. while(cin>>n>>m>>q)
  13. {
  14. if(n+m+q==) break;
  15. if(ca != )printf("\n");
  16. memset(dp,0x3f,sizeof(dp));
  17. for(int i = ; i < m; i++)
  18. {
  19. cin>>a>>b>>w;
  20. dp[a][b] = dp[b][a] = w;
  21. }
  22. for(int i = ; i <= n; i++)
  23. {
  24. dp[i][i] = ;
  25. }
  26. for(int k = ; k <= n; k++)
  27. {
  28. for(int i = ; i <= n; i++)
  29. {
  30. for(int j = ; j <= n; j++)
  31. {
  32. dp[i][j] = min(dp[i][j],max(dp[i][k],dp[k][j]));
  33. }
  34. }
  35. }
  36. cout<<"Case #"<<++ca<<endl;
  37. for(int i = ; i < q; i++)
  38. {
  39. cin>>a>>b;
  40. if(dp[a][b] >= inf)
  41. {
  42. cout<<"no path\n";
  43. }
  44. else cout<<dp[a][b]<<endl;
  45. }
  46. }
  47. return ;
  48. }

UVA - 10048 Audiophobia (Floyd应用)的更多相关文章

  1. UVA - 10048 Audiophobia Floyd

    思路:套用Floyd算法思想,d(i, j) = min(d(i,j), max(d(i,k), d(k,j)),就能很方便求得任意两点之间的最小噪音路径. AC代码 #include <cst ...

  2. uva 10048 Audiophobia(最小生成树)

    题目链接:10048 - Audiophobia 题目大意:有n个城市,和m条街道,每条街道有一个噪音值,q次去问,从城市a到城市b,路径上分贝值的最大值最小为多少. 解题思路:与uva 10099的 ...

  3. UVa 10048 - Audiophobia(Floyd变形)

    链接: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...

  4. UVA - 10048 Audiophobia(Floyd求路径上最大值的最小)

    题目&分析: 思路: Floyd变形(见上述紫书分析),根据题目要求对应的改变判断条件来解题. 代码: #include <bits/stdc++.h> #define inf 0 ...

  5. UVa 10048 Audiophobia【Floyd】

    题意:给出一个c个点,s条边组成的无向图,求一点到另一点的路径上最大权值最小的路径,输出这个值 可以将这个 d[i][j]=min(d[i][j],d[i][k]+d[k][j]) 改成 d[i][j ...

  6. UVA 10048 Audiophobia 任意两点的路径上最大的边

    题目是要求任意给定两点的的路径上最大的边,最终输出这些最大边中最小的值,也就是求一条路径使得这条路径上最大的边在所有连通两点的路径中最短.根据Floyd—Warshall算法改造一下就行了.dp[i] ...

  7. UVa 10048: Audiophobia

    这道题要求我们求出图中的给定的两个节点(一个起点一个终点,但这是无向图)之间所有“路径中最大权值”的最小值,这无疑是动态规划. 我开始时想到根据起点和终点用动态规划直接求结果,但最终由于题中S过大,会 ...

  8. uva 10048 Audiophobia UVA - 10048

    题目简介 一个无向正权图,求任意两个节点之间的路径里最短的路径长度. 直接Floyd解决,就是注意要把Floyd的DP式子改一下成 G[i][j]=min(G[i][j],max(G[i][k],G[ ...

  9. 紫书 例题 11-5 UVa 10048 (Floyd求最大权值最小的路径)

    这道题是Floyd的变形 改成d[i][j] = min(d[i][j], max(d[i][k], d[k][j]))就好了. #include<cstdio> #include< ...

随机推荐

  1. LeetCode OJ 229. Majority Element II

    Given an integer array of size n, find all elements that appear more than ⌊ n/3 ⌋ times. The algorit ...

  2. 深度探索C++对象模型之C++对象模型笔记

    0.菜鸟觉得,在看这本书的时候最好切换角色,把自己的思维转换成编译器开发者,去考虑问题,这样会容易理解些.(当然这样很难,就想着自己要解决什么样的问题好了) 1.在C++中,类的数据成员有两种:静态和 ...

  3. java抽象类的特点

    抽象类 抽象类的特点: 1.抽象类的方法可以是抽象的,也可以是不抽象的. 2.抽象类的方法可以全是抽象的,也可以全是不抽象的. 3.有抽象方法的类必须是抽象类,或者是接口(但是接口的方法定义必须是pu ...

  4. Sharepoint 的定制 - 代码附加内容编辑器

    //来源:http://www.cnblogs.com/codingcow/articles/69143.html Sharepoint是一种非常新而且很有用的技术. 现在微软把基本的功能集成到了Wi ...

  5. 解决time_wait过多的问题

    #netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’ LAST_ACK 14SYN_RECV 348ESTABLI ...

  6. MySQL5.5.源码安装

    MySQL5.5.34安装需要用到cmke  ncurses-devel yum install -y ncurses-devel cmake gcc gcc-c++ bison 下载http://m ...

  7. SEO优化技巧总结

    SEO优化技巧总结 一:了解搜索引擎 基础知识 搜索引擎:由蜘蛛程序沿着链接爬行和抓取网上的大量页面,存进数据库,经过预处理,用户在搜索框 输入关键词后,搜索引擎排序从数据库中挑选出符合搜索关键词要求 ...

  8. pgadmin3 新建服务器出现错误 Peer authentication failed for user "postgres" 的解决办法

    转自:http://blog.csdn.net/tingyuanss/article/details/43763899 用pgadmin3 新建服务器出现错误 Peer authentication ...

  9. hdu 计算机学院大学生程序设计竞赛(2015’11)

    搬砖 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Others)Total Submissi ...

  10. leetcode342合理运用位操作判断4的幂

    Given an integer (signed 32 bits), write a function to check whether it is a power of 4. Example: Gi ...