题意:传送门

题解:枚举+最小生成树

附上代码:


#include<bits/stdc++.h>using namespace std;const int maxn=5e2+5;
const int maxm=5e3+5;
const int inf=0x3f3f3f3f;struct edge{int u,v,w;
};
edge edges[maxm];bool cmp(edge a,edge b)
{return a.w<b.w;
}int n,m;
int x,y,v;
int s,t;
int f[maxn];int gcd(int a,int b)
{return b==0?a:gcd(b,a%b);
}int find(int x)
{if(x==f[x]){return x;}else{return f[x]=find(f[x]);}
}void merge(int a,int b)
{int x1=find(a),y1=find(b);if(x1!=y1){f[y1]=x1;}
}int main()
{scanf("%d%d",&n,&m);for(int i=1;i<=m;i++){edge &u=edges[i];scanf("%d%d%d",&u.u,&u.v,&u.w);}scanf("%d%d",&s,&t);sort(edges+1,edges+m+1,cmp);int ans1=1,ans2=inf;for(int i=1;i<=m;i++){for(int j=1;j<=n;j++){f[j]=j;}for(int j=i;j<=m;j++){int a=find(edges[j].u),b=find(edges[j].v);if(a!=b){1050merge(a,b);}if(find(s)==find(t)){if(edges[j].w*ans1<edges[i].w*ans2){ans1=edges[i].w;ans2=edges[j].w;}break;}}if(find(s)!=find(t)){break;}}int c=gcd(ans2,ans1);ans1/=c;ans2/=c;if(ans1==1&&ans2==inf){printf("IMPOSSIBLE\n");}else{if(ans1==1){printf("%d\n",ans2);}else{printf("%d/%d\n",ans2,ans1);}}return 0;
}

[HAOI2006]旅行comf(枚举+最小生成树)相关推荐

  1. BZOJ 1050 [HAOI2006]旅行comf(最小生成树)

    题意 第一行包含两个正整数,N和M.下来的M行每行包含三个正整数:x,y和v.表示景点x到景点y之间有一条双向公路 ,车辆必须以速度v在该公路上行驶.最后一行包含两个正整数s,t,表示想知道从景点s到 ...

  2. BZOJ 1050: [HAOI2006]旅行comf(枚举+并查集)

    [HAOI2006]旅行comf Description 给你一个无向图,N(N<=500)个顶点, M(M<=5000)条边,每条边有一个权值Vi(Vi<30000).给你两个顶点 ...

  3. 【bzoj1050】[HAOI2006]旅行comf

    1050: [HAOI2006]旅行comf Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 2813  Solved: 1534 [Submit][ ...

  4. [并查集]BZOJ 1050——[HAOI2006]旅行comf

    1050: [HAOI2006]旅行comf 题目描述 给你一个无向图,N(N<=500)个顶点, M(M<=5000)条边,每条边有一个权值Vi(Vi<30000).给你两个顶点S ...

  5. BZOJ 1050 [HAOI2006]旅行comf(并查集)

    1050: [HAOI2006]旅行comf Description 给你一个无向图,N(N<=500)个顶点, M(M<=5000)条边,每条边有一个权值Vi(Vi<30000). ...

  6. BZOJ 1050 HAOI2006 旅行comf

    1050: [HAOI2006]旅行comf Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 3715  Solved: 2070 [Submit][ ...

  7. bzoj 1050: [HAOI2006]旅行comf(尺取+最短路)

    1050: [HAOI2006]旅行comf Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 3335  Solved: 1852 [Submit][ ...

  8. bzoj1050: [HAOI2006]旅行comf

    题面在这里 题意: 给一个图,每条边有边权. 给一个s和t,如果s和t之间没有路径输出IMPOSSIBLE,否则输出路径上最大边和最小边的比值的最小值. 做法: 你把边从小到大排序.那么对于一个最小值 ...

  9. BZOJ1050 HAOI2006 旅行comf 生成树+枚举

    题意:给订一张无向图,求一条S到T的路径,使得路径上的最大边权与最小边权的比值最小 题解:将边由小到大排序,暴力枚举最小边,然后借鉴Kruskal的思想,由小到大加入每一条大于初始边的边,检验S与T是 ...

最新文章

  1. 自然科学期刊能发表计算机论文吗,自然科学专业论文好发表吗?
  2. python字典(dict)+常用方法操作+列表、元组、集合、字典的互相转换
  3. (winform cookie)如何向某网址Post信息,并得到CookieContainer以便以后直接通过验证...
  4. [architecture]-Cortex-A53的configuration signals
  5. c++Data Member的绑定
  6. 第三次学JAVA再学不好就吃翔(part41)--修饰符
  7. 834 树中距离之和
  8. 【解决问题】useBean类属性[com.cheng.pojo.People]的值无效导致HTTP500问题
  9. python将数据写入Excel
  10. javascript 事件 第23节
  11. 算法笔记_031:计算中值和选择问题(Java)
  12. 剑指offer--两个链表的第一个公共结点
  13. linux ipv4文件,Linux IPV4 IPV6地址批量Ping脚本(工具)
  14. 如何快速深入理解监控知识?
  15. 2, 世界上第一台电子数字计算机叫什么?它诞生在哪个国家?,世界上第一台电子数字,计算机叫什么名...
  16. Laravel学习记录--数据填充
  17. 人脸识别技术和人脸识别特征
  18. Win8.1 IE11 浏览器无法打开任何网页的解决办法
  19. java互联网架构,大数据学习笔记1--------Python入门个人笔记,仅记录个人觉得需要记得东西)
  20. HTML特殊字符编码对照表 —— (二)

热门文章

  1. 让复杂Json数据和对象自由转换 --- Gson
  2. 2020中山大学计算机学院保研,我校举行中山大学2020级研究生招生宣讲会
  3. 3D打印机DIY之五------切片软件Cura的使用
  4. 学之思开源代码学习(1)
  5. web 框架的本质及自定义web框架 模板渲染jinja2 mvc 和 mtv框架 Django框架的下载安装 基于Django实现的一个简单示例...
  6. 漏斗分析 - AARRR模型案例分析
  7. 计算机专业电脑需要显卡吗,组装电脑要不要配独立显卡?
  8. CHERRY 键盘 alt 组合键失灵或开始菜单键失灵
  9. IEEE格式如何使用在线参考文献生成器
  10. 姜小白的Python日记Day14 系统模块详解1 time模块和random模块