给你一个有n个点和m条边的无向连通图,每条边都有一个权值w.
我们定义,对于一条路径,它的Charm value为该路径上所有边的权值的最大值与最小值的差.
询问从1到n的所有路径的Charm value的最小值.

Input

第一行有两个整数n,m(1≤n≤200,n−1≤m≤1000),表示该图有nn个点和mm条边.
接下来m行,每行三个整数u,v,w(1≤u,v≤n,1≤w≤1000000),表示点uu和点vv之间有一条权值为w的边.

Output

输出一个数,即从1到n的所有路径的Charm value的最小值.

Sample input and output

Sample Input Sample Output
4 4
3 4 1
2 3 2
1 2 4
2 4 3
1

Source

2017 UESTC Training for Graph Theory
思路
首先,我们要找一条从1到n路径,使得路径上权重小的尽量大、权重大的尽量小
这就和Kruskal算法贪心的思想不谋而合
对边的权重按从小到大进行排序,从i=0开始对j>=i的边集构建最小生成树,对每个i求一个Charm value(可能对于某个i不存在Charm value),最后取最小值就OK了
#include <iostream>
#include <cstdlib>
#include <algorithm>
using namespace std;struct edge{int u,v,w;
};
int V,E,id[210];
edge e[1010];bool cmp(const edge &a,const edge &b) {return a.w<b.w;
}int find(int x) {return (x==id[x])?x:(id[x]=find(id[x]));
}int main() {int ru,rv,charmvalue=1000010;cin>>V>>E;for (int i=0; i<E; i++)cin>>e[i].u>>e[i].v>>e[i].w;sort(e, e+E, cmp);for (int i=0; i<E;i++) {for (int k=0; k<=V; k++)id[k]=k;for (int j=i; j<E; j++) {ru=find(e[j].u);rv=find(e[j].v);if (ru==rv)continue;id[ru]=rv;if (find(1)==find(V)) {charmvalue=min(charmvalue,abs(e[i].w-e[j].w));break;}}}cout<<charmvalue;
}

转载于:https://www.cnblogs.com/soildom/p/7895593.html

CDOJ 1636 梦后楼台高锁,酒醒帘幕低垂相关推荐

  1. 【最小生成树专题】UESTC - 1636 梦后楼台高锁,酒醒帘幕低垂

    http://qscoj.cn/#/problem/show/1636 梦后楼台高锁,酒醒帘幕低垂 Description 给你一个有nn个点和mm条边的无向连通图,每条边都有一个权值ww.  我们定 ...

  2. UESTC 1636 梦后楼台高锁,酒醒帘幕低垂

    题意:求一条路径,使得这条边连接1到n,求边权值的最大值与最小值的差 题解:最小生成树,对边权排序,可以枚举边的最大和最小的值,判断能否使得1和n连通 #include <bits/stdc++ ...

  3. UESTC - 1636 梦后楼台高锁,酒醒帘幕低垂(枚举+最小生成树)

    题意 给你一张图, 求1到n的路径,边权最大值-边权最小值最小的差ans 输出这个ans 思路来源 https://blog.csdn.net/ProLightsfxjh/article/detail ...

  4. CDOJ:1636-梦后楼台高锁,酒醒帘幕低垂(Kruskal+暴力)

    梦后楼台高锁,酒醒帘幕低垂 Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit ...

  5. 《临江仙·梦后楼台高锁》——[宋]晏几道

    梦后楼台高锁,酒醒帘幕低垂.去年春恨却来时.落花人独立,微雨燕双飞. 记得小蘋初见,两重心字罗衣.琵琶弦上说相思.当时明月在,曾照彩云归.(蘋:通'苹') 转载于:https://www.cnblog ...

  6. [UESTC1636]梦后楼台高锁,酒醒帘幕低垂

    给你一个有n个点和m条边的无向连通图,每条边都有一个权值w.我们定义,对于一条路径,它的Charm value为该路径上所有边的权值的最大值与最小值的差. 询问从1到n的所有路径的Charm valu ...

  7. 晏几道 天涯 青砚1989

    晏几道:去年春恨却来时 酒醒长恨锦屏空  梦后楼台高锁,酒醒帘幕低垂.去年春恨却来时,落花人独立,微雨燕双飞.  记得小蘋初见,两重心字罗衣.琵琶弦上说相思,当时明月在,曾照彩云归.    --晏几道 ...

  8. UESTC 图论专题 A-D

    A:梦后楼台高锁,酒醒帘幕低垂 题目链接:http://acm.uestc.edu.cn/#/problem/show/1636 解法:首先,考虑到,我们需要找到一条路径,使它的最小边尽量大,最大边尽 ...

  9. 科大星云诗社动态20210309

    [诗人背后的故事--为情而活晏几道] 杜甫忧国,不顾妻子有孕离家而去:陆游孝顺,因为母亲反对就休掉唐婉:元白交好,两人唱和诗比给妻子的诗多得多--诗人虽写情,却未必重情.忠义礼孝,皆在情之上. 而历史 ...

最新文章

  1. IOS进阶之WKWebView
  2. DevExpress的图形按钮菜单栏控件WindowsUIButtonPanel的布局、使用和设置按钮的点击事件
  3. [转]要有梦----送给自己,希望自己能尽快走出当前的痛苦期
  4. 响应json数据之过滤静态资源
  5. pat 乙级 1002 写出这个数(C++)
  6. 关于js的一切(updating...)
  7. Windows Message ID 常量列表
  8. 读“产品经理那些事儿”有感
  9. nyoj-488 素数环 +nyoj -32 组合数 (搜索)
  10. centos7 redis分布式集群问题总结
  11. Atitit. BigConfirmTips 控件 大数据量提示确认控件的原理and总结O9
  12. 嵌入式软件分层设计思想
  13. 使用教育邮箱享正版Jetbrains 套件,IDEA正版webstrom正版
  14. C/C++——字符串拼接
  15. 阿里云注册域名,购买云服务器,备案,域名解析教程
  16. linux Ubuntu系统安装百度aip
  17. 实现直播带货系统推流,你进行推流监控了吗?
  18. android 4.3 刷机,金立GN9005 Android 4.3-4.4 (S5.1 移动4G)一键救砖教程,轻松刷回官方系统...
  19. 采用面向对象的方法来实现留言板的添加和删除功能
  20. 【期末复习】带着问题看网络信息安全

热门文章

  1. mysql insert delayed_mysql insert的几点操作(DELAYED 、IGNORE、ON DUPLICATE KEY UPDATE )
  2. 如何捞取ERP中报表的sql
  3. 一个有序数列,序列中的每一个值都能够被2或者3或者5所整除
  4. 运营总监平时是做什么的?揭秘运营总监地位和公司排位!
  5. 3ds Max - 物件笔刷功能
  6. Swagger - 魔改版本的 bootstrap swagger UI 页面 ,springboot 集成
  7. 最短路径 Dijkstra算法
  8. Java API中文版下载
  9. 如何解决 HC-06 波特率设置为1382400
  10. python项目加密