luoguP2502旅行
2006河南省选
思路:(参考题解)
枚举最大的边(第\(i\)条),从这条边开始由大到小枚举、添边,当\(s\)和\(t\)联通时,此时即为以第\(i\)条边为最大边的答案,比较每个答案,判断输出。
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int N = 50005;
int n,m,fa[N],tot,s,t;
int ansm,ansz,anspm,anspz;
struct edge{
int from,node,data;
}e[N];
void add(int x,int y,int z)
{
e[++tot].from=x; e[tot].node=y;
e[tot].data=z;
}
bool cmp(edge a,edge b)
{ return a.data<b.data; }
int find(int x)
{
if(x!=fa[x]) fa[x]=find(fa[x]);
return fa[x];
}
void uni(int x,int y)
{
int f1=find(x),f2=find(y);
fa[f1]=f2;
}
bool judge()
{ return find(s)==find(t); }
int gcd(int x,int y)
{
if(x%y==0) return y;
return gcd(y,x%y);
}
int main()
{
scanf("%d%d",&n,&m);
for(int k=1;k<=n;k++) fa[k]=k;
int x,y,z;
for(int i=1;i<=m;i++)
{
scanf("%d%d%d",&x,&y,&z);
add(x,y,z); uni(x,y);
}
scanf("%d%d",&s,&t);
if(find(s)!=find(t))
{ printf("IMPOSSIBLE\n"); return 0; }
sort(e+1,e+tot+1,cmp);
for(int i=tot;i>=1;i--)
{
anspz=e[i].data;
for(int k=1;k<=n;k++) fa[k]=k;
for(int j=i;j>=1;j--)
{
uni(e[j].from,e[j].node);
if(judge())
{ anspm=e[j].data;
if(ansm==0) ansm=anspm,ansz=anspz;
else if((ansz*anspm)>(anspz*ansm))
ansm=anspm,ansz=anspz;
}
// if(ansm!=0&&(ansz*anspm)<(anspz*ansm)) break;
}
}
int t=gcd(ansm,ansz);
ansm=ansm/t;
ansz=ansz/t;
if(ansm==1) printf("%d\n",ansz);
else printf("%d/%d\n",ansz,ansm);
return 0;
}
luoguP2502旅行的更多相关文章
- BZOJ 3531: [Sdoi2014]旅行 [树链剖分]
3531: [Sdoi2014]旅行 Time Limit: 20 Sec Memory Limit: 512 MBSubmit: 1685 Solved: 751[Submit][Status] ...
- vijos P1780 【NOIP2012】 开车旅行
描述 小\(A\)和小\(B\)决定利用假期外出旅行,他们将想去的城市从\(1\)到\(N\)编号,且编号较小的城市在编号较大的城市的西边,已知各个城市的海拔高度互不相同,记城市\(i\)的海拔高度为 ...
- 【BZOJ-1570】BlueMary的旅行 分层建图 + 最大流
1570: [JSOI2008]Blue Mary的旅行 Time Limit: 15 Sec Memory Limit: 162 MBSubmit: 388 Solved: 212[Submit ...
- codevs 1036 商务旅行(Targin求LCA)
传送门 Description 某首都城市的商人要经常到各城镇去做生意,他们按自己的路线去做,目的是为了更好的节约时间. 假设有N个城镇,首都编号为1,商人从首都出发,其他各城镇之间都有道路连接,任意 ...
- nyoj 71 独木舟上的旅行(贪心专题)
独木舟上的旅行 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别.一条独木舟最多只能乘坐两个人,且乘客 ...
- 【bzoj3531】 [SDOI2014]旅行
题目描述 S国有N个城市,编号从1到N.城市间用N-1条双向道路连接,满足从一个城市出发可以到达其它所有城市.每个城市信仰不同的宗教,如飞天面条神教.隐形独角兽教.绝地教都是常见的信仰.为了方便,我们 ...
- tomcat源码分析(三)一次http请求的旅行-从Socket说起
p { margin-bottom: 0.25cm; line-height: 120% } tomcat源码分析(三)一次http请求的旅行 在http请求旅行之前,我们先来准备下我们所需要的工具. ...
- 11.14 T2 小x的旅行(小x的旅行)
1.小x的旅行 (travel.pas/c/cpp) [问题描述] 小x大学毕业后,进入了某个公司做了高层管理,他每年的任务就是检查这个公司在全国各地N个分公司的各种状况,每个公司都要检查一遍,且 ...
- hdoj 2066 一个人的旅行
Problem Description 虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路的人,汗~),但是草儿仍然很喜欢旅行,因为在旅途中 会遇见很多人(白马王子,^0^),很多事,还能丰 ...
随机推荐
- Windows XP Services
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
- matplotlib设置中文标签
import matplotlib.pyplot as plt plt.rcParams['font.sans-serif']=['SimHei']
- jmetter的http请求设置
1.设置 cookie 2.设置header 3.login 4.post请求 5.get请求
- 微信小程序之:wepy框架
1.介绍 WePY 是 腾讯 参考了Vue 等框架对原生小程序进行再次封装的框架,更贴近于 MVVM 架构模式, 并支持ES6/7的一些新特性. 2.使用 npm install -g wepy-cl ...
- 盒模型的垂直居中css
https://www.cnblogs.com/zhouhuan/p/vertical_center.html
- java8 日期时间解析与转换
Instant now = Instant.now(); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM ...
- Windows系统CMD下常用命令
命令 功能ASSOC 显示或修改文件扩展名关联.ATTRIB 显示或更改文件属性.BREAK 设置或清除扩展式 CTRL+C 检查.BCDEDIT 设置启动数据库中的属性 ...
- Apache Hadoop 2.9.2 的归档案例剖析
Apache Hadoop 2.9.2 的归档案例剖析 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 能看到这篇文章说明你对NameNode 工作原理是有深入的理解啦!我们知道 ...
- html5+hbuilder+夜神模拟器+webview
HTML5 Plus应用概述 首先新建一个移动App项目,文件-->新建-->移动APP HTML5 Plus移动App,简称5+App,是一种基于HTML.JS.CSS编写的运行于手机端 ...
- H5_0002:微信分享设置
1,非公众号的链接,设置分享的预览图片. 先打开页面,在收藏页面,最后在收藏界面长按 “转发” ,即可在链接上出现预览图片.