BZOJ1050旅游

Description
给你一个无向图,N(N<=500)个顶点, M(M<=5000)条边,每条边有一个权值Vi(Vi<30000)。给你两个顶点S和T,求一条路径,使得路径上最大边和最小边的比值最小。如果S和T之间没有路径,输出”IMPOSSIBLE”,否则输出这个比值,如果需要,表示成一个既约分数。 备注: 两个顶点之间可能有多条路径。
Input
第一行包含两个正整数,N和M。 下来的M行每行包含三个正整数:x,y和v。表示景点x到景点y之间有一条双向公路,车辆必须以速度v在该公路上行驶。 最后一行包含两个正整数s,t,表示想知道从景点s到景点t最大最小速度比最小的路径。s和t不可能相同。
Output
如果景点s到景点t没有路径,输出“IMPOSSIBLE”。否则输出一个数,表示最小的速度比。如果需要,输出一个既约分数。

样例输入1
4 2
1 2 1
3 4 2
1 4
样例输入2
3 3
1 2 10
1 2 5
2 3 8
1 3
样例输入3
3 2
1 2 2
2 3 4
1 3

样例输出1
IMPOSSIBLE
样例输出2
5/4
样例输出3
2

数据范围
1<  N < = 500
1 < = x, y < = N,0 < v < 30000,x ≠ y
0 < M < =5000

分析:这道题,从题解上找到了一种思路,即先排序。从起点开始选择边,一直到到达终点。再反向从终点添加边到起点。显然这样的话起点会不断提前。最终起点不能再提前的时候集合中的两条边就是答案。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;

struct node{
    int x,y,w;
}e[5001];

int n,m;
int s,t;
int fa[501];

bool cmp(node a,node b)
{
    return a.w<b.w;
}

int find(int x)
{
    return fa[x]==x?x:fa[x]=find(fa[x]);
}

int gcd(int a,int b)
{
    int r;
    while(b>0)
    {
         r=a%b;
         a=b;
         b=r;
    }
    return a;
}

int main()
{

    cin >> n >> m;
    for (int i=1; i<=m; i++) cin >> e[i].x >> e[i].y >> e[i].w;
    cin >> s >> t;
    sort(e+1,e+m+1,cmp);
    int f=1;
    int ansmx=0,ansmn=0;
    int mx=0,mn=0;
    while (f<m)
    {
        mx=0; mn=0;
        for (int i=1; i<=n; i++) fa[i]=i;
        while (f<=m)
        {
            int fx=find(e[f].x),fy=find(e[f].y);
            fa[fx]=fy;
            if (find(s)==find(t)) { mx=e[f].w; break; }
            f++;
        }
        if (mx==0)
            if (!ansmx) { cout << "IMPOSSIBLE" << endl; return 0; }//找不到从s到t的路
                else break;
        for (int i=1; i<=n; i++) fa[i]=i;//初始化
        while (f>=0)
        {
            int fx=find(e[f].x),fy=find(e[f].y);
            fa[fy]=fx;
            if (find(s)==find(t)) { mn=e[f].w; break; }
            f--;
        }
        if (mn==0)
            if (!ansmn) { cout << "IMPOSSIBLE" << endl; return 0; }
                else break;
        f++;//从下一条边开始枚举
        int r=gcd(mx,mn);
        mx/=r; mn/=r;//约分
        if (mx*ansmn<mn*ansmx || (!ansmx && !ansmn)) { ansmx=mx; ansmn=mn; }
    }
    if (ansmn==1) cout << ansmx;
        else cout << ansmx << ‘/‘ << ansmn << endl;
    return 0;
}
时间: 2024-07-31 13:36:52

BZOJ1050旅游的相关文章

广州去厦门旅游攻略--(转自 #散文吧网站#)

广州去厦门旅游攻略 发布时间:2016-12-11 17:30 厦门由厦门岛.离岛鼓浪屿.内陆九龙江南岸海沧半岛.集美半岛.翔安区以及同安等组成,陆地面积1699.39Km2,海域面积300多平方公里.厦门的主体--厦门岛南北长13.7公里,东西宽12.5公里,面积约为128.14Km2.是厦门的主要岛屿,也是厦门第一大岛屿.厦门岛是厦门经济特区的发祥地,岛上有厦门的商业和政治中心.各国殖民者最初居住的地方鼓浪屿就在厦门岛西南部.今天小编带给大家的是广州去厦门旅游攻略, 希望对大家有帮助. 厦门

第四周作业——在你的实际项目旅游网站中,网页主页面主要有哪些模块?

网站的主页面主要包括几个模块.第一个模块是注册与登录模块,用于用户的注册和登录.第二个模块是搜索,它能帮助用户快速方便的查找用户想要了解的城市,从而对该城市的图片进行浏览.第三个模块是城市图片模块,用于用户对城市的自主选择,在该城市首图片的一侧会注有对该城市的一些简单介绍.这是给那些想要旅游却没有明确的目的地的用户提供的一种介绍,在用户看到自己想要了解的城市之后,可以点击图片链接进入更详细的介绍该城市的模块中进行浏览.第四个模块是评论的模块,在该模块中,用户可以结合自己的亲身经历对某城市进行一番

360全景虚拟景区,现在的旅游景点都在用它赚钱

360全景在旅游景点应用,高清晰度全景三维展示景区的优美环境,给观众一个身临其景的体验,结合景区游览图导览,可以让观众自由穿梭于各景点之间,是旅游景区.旅游产品宣传推广的最佳创新手法. 360全景虚拟景区是指以全景虚拟现实为主要技术手段的虚拟现实技术,全面展示旅游景点风貌,给游客身临其境的感受. 360全景虚拟景区主要用于电子商务平台及景区数字推广. 国务院曾出台过<国务院关于加快发展旅游业的意见>的文件,该文件中要求旅游行业"以信息化为主要途径,提高旅游服务效率.全面提升旅游企业.

360全景旅游前景怎么样,有哪些优势?

360全景通过使用数码相机捕捉真实场景的360全景范围内的图像信息,结合全景软件生成360全景并发布,观赏者使用鼠标来控制图像放大缩小,随意拖动观看场景360°范围内的任意角度. 对于某些偏远地区的文化旅游业而言,要促进产业链整合.推动各环节有效联动并实现产业的价值增值,更需要特别重视旅游价值链的各环节. 听"虚拟"一词,给人们的第一感觉就是不真实,虚幻.今日,我们再谈"虚拟",定义不再仅仅是虚拟.全景技术的加入,让虚拟的环境给人以真实的感觉,以身临其境,形象生动.

携程合体去哪儿,与途牛度假旅游市场争高下

作者:楠沨 [IT战略家] 本次度假业务的合并,除了双方在线旅游市场的携手,还包括了地面BU(旅游事业部)的合并,进一步提升双方在包价旅游业务和地面碎片化业务地位的同时,携程旅游将获得去哪儿度假的用户流量,在团队效率上也会有所提高. 近来,携程在资本市场动作频频.先是战略投资旅游百事通,通过后者拥有的5000多家线下门店布局二.三线城市,后又与美国海鸥.纵横.途风三大旅行社战略合作,进军美国旅游市场,扩展线下旅游业务.本次合并去哪儿,是携程整合在线度假市场"生态圈"的又一大动作.同时,

bzoj2157旅游

题目: 2157: 旅游 Time Limit: 10 Sec  Memory Limit: 259 MBSubmit: 569  Solved: 310[Submit][Status][Discuss] Description Ray 乐忠于旅游,这次他来到了T 城.T 城是一个水上城市,一共有 N 个景点,有些景点之间会用一座桥连接.为了方便游客到达每个景点但又为了节约成本,T 城的任意两个景点之间有且只有一条路径.换句话说, T 城中只有N − 1 座桥.Ray 发现,有些桥上可以看到美丽

旅游票务网站

网站简介:实现票务电子商务平台,在平台上面购买票后,在线支付然后手机收到验证码,在景点进行验证进行电子检票.(朋友提的要求) 网站主要有三部分组成,前台web(包括会员系统),后台管理系统,景点验票. 网站的主要内容:景点门票,景区宾馆,旅游租车,会议会务,帮助中心 网站主要的模块:登陆 支付 短信发送 其中会员部分:散户(不登录) 登录会员 代理商 网站设计一共涉及到32个数据表,后经优化压缩到27个.网站采用tp3.1.2框架进行设计 由于个人美工方面不够专业,细节上仍显粗糙!

2014环球旅游小姐国际大赛

环球旅游小姐(Miss Toursim of the Globe)国际大赛于1971年由美国好莱坞美丽盛会组织(Festival Of Beauty)主席Charlie See先生创办,大赛的宗旨是评选本国或地区的旅游形象大使. 该项大赛在60多个国家得到国际的认可,是各国旅游小姐大赛优胜者的最终国际比赛,也是世界上历史最悠久,最具权威性的旅游小姐赛事之一,是各国有权派出选手参与的旅游形象选美大赛之一,与全球旅游小姐.国际旅游小姐和世界城市旅游小姐齐名,并称为世界四大顶级旅游选美赛事. Miss

AppCan 移动应用开发项目源码分享:嗡嗡旅游App开发

开发者介绍:老家湖北巴东好山好水,神农溪.巴人河.三里城等都是旅游好去处.中秋节回了趟老家,看到家乡的原生态景色吸引了大批游客,由此萌发了想法:用移动技术开发一个App试水,把家乡景点介绍给更多的人.于是,耗时一个月的<嗡嗡旅游>应运而生,特此将项目源码分享给广大AppCan开发者. 项目实现功能 用户注册.登录,游记查看和发布,查看辖区内景区.酒店.交通.攻略等信息,内容收藏.评论和分享,查看地图,景区门票.酒店电话预定等. 项目使用插件 引导页 引导页3张图片采用的是全屏显示的slider