XX星有许多城市,城市之间通过一种奇怪的高速公路SARS(Super Air Roam Structure---超级空中漫游结构)进行交流,每条SARS都对行驶在上面的Flycar限制了固定的Speed,同时XX星人对 Flycar的“舒适度”有特殊要求,即乘坐过程中最高速度与最低速度的差越小乘坐越舒服 ,(理解为SARS的限速要求,flycar必须瞬间提速/降速,痛苦呀 ), 
但XX星人对时间却没那么多要求。要你找出一条城市间的最舒适的路径。(SARS是双向的)。

Input

输入包括多个测试实例,每个实例包括: 
第一行有2个正整数n (1<n<=200)和m (m<=1000),表示有N个城市和M条SARS。 
接下来的行是三个正整数StartCity,EndCity,speed,表示从表面上看StartCity到EndCity,限速为speedSARS。speed<=1000000 
然后是一个正整数Q(Q<11),表示寻路的个数。 
接下来Q行每行有2个正整数Start,End, 表示寻路的起终点。

Output

每个寻路要求打印一行,仅输出一个非负整数表示最佳路线的舒适度最高速与最低速的差。如果起点和终点不能到达,那么输出-1。

Sample Input

4 4
1 2 2
2 3 4
1 4 1
3 4 2
2
1 3
1 2

Sample Output

1
0

主要运用了并查集,和贪心,先把所有公路的速度,由小到大排序,然后一条一条的取,最后所有公路差的最小值就是结果。

C++版本一

#include <iostream>
#include <stdio.h>
#include <algorithm>
using namespace std;
const int INF=(0x7f7f7f7f7f);
const int N=1000+10;
int m,n,q,pre[N];
struct node{int f,t,l;node (){};node (int a ,int b ,int c){f=a;t=b;l=c;}bool operator <(const node  &S)const{return l<S.l;}}e[N];
int find(int x){int r=x;while(pre[r]!=r)r=pre[r];return r;
}int main()
{while(scanf("%d%d",&n,&m)!=EOF){int a,b,c;for(int i=1;i<=m;i++){scanf("%d%d%d",&a,&b,&c);e[i]=node(a,b,c);}scanf("%d",&q);sort(e+1,e+m+1);while(q--){int sp,ep;scanf("%d%d",&sp,&ep);int min1 = INF;for (int i=1; i<=m; i++)    //枚举{for (int j=1; j<=n; j++)pre[j] = j;for (int j=i; j<=m; j++){int fx = find(e[j].f);int fy = find(e[j].t);if (fx != fy)pre[fx] = fy;if (find(sp) == find(ep)){min1 = min(min1, e[j].l - e[i].l);break;}}}if (min1 == INF) puts("-1");else printf("%d\n", min1);}}//cout << "Hello world!" << endl;return 0;
}

find the most comfortable road相关推荐

  1. hdu 1598 find the most comfortable road (并查集+枚举)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1598 find the most comfortable road Time Limit: 1000/ ...

  2. HDU1598 find the most comfortable road【枚举+并查集+最大生成树】

    find the most comfortable road Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (J ...

  3. HDOJ 1598 find the most comfortable road(并查集+贪心)

    find the most comfortable road Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K ...

  4. ACM--steps--dyx--5.1.4--find the most comfortable road

    find the most comfortable road Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (J ...

  5. 图论500题 ---- (枚举+并查集)求图上路径权值差值最小 HDU find the most comfortable road

    题目链接 解题思路: 对于两个点的路径假设我们把边按照边权进行排序那么,再把边依次加入图中判断两点的联通性,那么这个边就是两个点联通的最小的最大值,但是最大的最小值怎么找? 因为我们是把边权按照从小到 ...

  6. hdu 1598 find the most comfortable road

    题意:给出一幅无向图,每次询问给出起点和终点,求起点到终点权值差最小的一条路,输出权值差: 思路:边按权值排序,利用并查集枚举每次能使起点终点联通的情况下权值差,并每次更新最小值: #include& ...

  7. Find the most comfortable road(HDU-1598)

    Problem Description XX星有许多城市,城市之间通过一种奇怪的高速公路SARS(Super Air Roam Structure---超级空中漫游结构)进行交流,每条SARS都对行驶 ...

  8. 【HDOJ图论题集】【转】

    1 =============================以下是最小生成树+并查集====================================== 2 [HDU] 3 1213 How ...

  9. 一系列图论问题[转]

    =============================以下是最小生成树+并查集====================================== [HDU] 1213 How Many ...

最新文章

  1. Android string.xml 通配符 %$用法
  2. 【Java基础】异常处理与输入输出流
  3. php ob静态缓存
  4. SAP CRM BSP URL 302 redirect
  5. 【阿里妈妈数据科学系列】第五篇:实验指标设定方法与指标体系构建
  6. 酒店管理与计算机技术结合,(定稿)某酒店内部管理系统的开发与应用(完整版)...
  7. vmware虚拟机安装win7_图文分享虚拟机怎么安装win7系统
  8. CSS 文字垂直居中自适应 - 代码篇
  9. Golang笔记—面向对象编程
  10. “宇宙最强”GPU —— NVIDIA Tesla V100 面向开发者开放试用!
  11. frok的一个Demo测试素数
  12. c语言 16进制编辑器,十六进制编辑器(010 Editor 32位)
  13. bat 注释,echo off 和 rem 和 :
  14. PPT 去除排练计时
  15. python中分号中没内容_被“嫌弃”的分号的一生:不要在Python中使用无用分号了...
  16. 计算机公式除以键是,excel函数的除法公式(整数及余数)《计算机除法函数公式》...
  17. list集合练习----斗地主
  18. MySQL-查看数据库
  19. 微软语音识别引擎Speech
  20. java代码获取本周的开始日期和结束日期,并动态获取前几周的或者后几周的开始日期和结束日期。

热门文章

  1. html社交模板,Olympus – 社交网HTML静态模板
  2. 开源版本_开源版本PowerShell Core 6.2 发布
  3. this.$modal.confirm 自定义按钮关闭_Excel迫使人类基因重命名?用VBA给科学家们支一招!—— 怎样快速定制工具栏按钮...
  4. Myeclipse创建Maven项目提示:Creating maven-archetype-webapp has encountered a problem. 解决方法
  5. c vs java_c++ vs java---之一
  6. 五十九、如何求N个数的最大公约数和最小公倍数
  7. 四十五、深入Java的网络编程(上篇)
  8. 数据分析案例(贷款风险预测)
  9. matlab摄像头录像保存在哪里,matlab连接摄像头读取视频部分解释
  10. 从4篇顶会论文看Self-training最新研究进展