[bzoj1050 HAOI2006] 旅行comf (kruskal)

傳送門

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不可能相同。
1<N<=500,1<=x,y<=N,0<v<30000,0<M<=5000

Output

如果景點s到景點t沒有路徑,輸出“IMPOSSIBLE”。否則輸出一個數,表示最小的速度比。
如果需要,輸出一個既約分數。

Sample Input

【樣例輸入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

Sample Output

【樣例輸出1】

IMPOSSIBLE

【樣例輸出2】

5/4

【樣例輸出3】

2

Solution

沒什么明顯的提示qwq
題目是要找兩條符合條件邊求比值,發現m是5000的可以先枚舉其中一條邊再\(O(m)\)地找另一條邊就能行
這個題是要在s和t聯通的情況下,找到最小比值,那么如果確定一條最小邊,只需要找到最大邊最小的的方案使st連通其中的最大邊就是當前情況的最優邊
于是就想到了kruskal的方法,直接套上去發現所有要求就都滿足了ヽ( ̄▽ ̄)ノ

Code

//By Menteur_Hxy
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<iostream>
#include<algorithm>
#define F(i,a,b) for(register int i=(a);i<=(b);i++)
using namespace std;int read() {int x=0,f=1; char c=getchar();while(!isdigit(c)) {if(c=='-')f=-f; c=getchar();}while(isdigit(c)) x=(x<<1)+(x<<3)+c-48,c=getchar();return x*f;
}const int N=510,M=5010;
int n,m,s,t,amx,ami;
int fa[N];
double ans=2333333333.0;
struct eds{int fr,to,w;}ed[M];int gcd(int a,int b) {return !b?a:gcd(b,a%b);}
int getf(int x) {return fa[x]==x?x:fa[x]=getf(fa[x]);}
bool cmp(eds x,eds y) {return x.w<y.w;}int main() {n=read(),m=read();F(i,1,m) {int a=read(),b=read(),c=read();ed[i]=(eds){a,b,c};}s=read(),t=read();sort(ed+1,ed+1+m,cmp);
//  cout<<endl;F(i,1,m) {F(j,1,n) fa[j]=j;int mi=ed[i].w;F(j,i,m) {int fu=getf(ed[j].fr),fv=getf(ed[j].to);
//          cout<<fu<<" "<<fv<<endl;if(fu!=fv) fa[fu]=fv;
//          cout<<getf(s)<<" "<<getf(t)<<endl;
//          cout<<endl;if(getf(s)==getf(t)) {int mx=ed[j].w;double res=(double)mx/mi;
//              cout<<res<<endl;if(res<ans) amx=mx,ami=mi,ans=res;break;}}}if(ans==2333333333.0) puts("IMPOSSIBLE");else if(amx%ami==0) printf("%d",amx/ami);else {int d=gcd(amx,ami);printf("%d/%d",amx/d,ami/d);}return 0;
}

轉載于:https://www.cnblogs.com/Menteur-Hxy/p/9371979.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/279761.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/279761.shtml
英文地址,請注明出處:http://en.pswp.cn/news/279761.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

好程序員技術文檔HTML5開發中的javascript閉包

好程序員技術文檔HTML5開發中的javascript閉包&#xff0c;事實上&#xff0c;通過使用閉包&#xff0c;我們可以做很多事情。比如模擬面向對象的代碼風格;更優雅&#xff0c;更簡潔的表達出代碼;在某些方面提升代碼的執行效率&#xff0c;同時避免對命名空間的污染&#xff0c…

亞馬遜echo中國使用_如何使用亞馬遜的主要照片備份所有照片

亞馬遜echo中國使用Millions of people are Amazon Prime subscribers, but many of them don’t realize that in addition to free shipping and Prime Instant Video, they also get unlimited photo storage for all their computers and mobile devices. 數以百萬計的人是…

抽象SQL查詢:SQL-MAP技術的使用

什么是參數化查詢&#xff1f;我們來看百度百科對此的定義和示例&#xff1a; 一&#xff0c;定義 ------------------------------------------------------------------ 參數化查詢&#xff08;Parameterized Query 或 Parameterized Statement&#xff09;是指在設計與數據庫…

EF ORM

//新增UserInfo userInfo new UserInfo();userInfo.UserName "YANG";userInfo.UserPass "123";userInfo.Email "253qq.com";userInfo.RegTime System.DateTime.Now;Model1Container db new Model1Container();db.UserInfoSet.Add(userInfo…

如何使用echo.js實現圖片的懶加載(整理)

如何使用echo.js實現圖片的懶加載&#xff08;整理&#xff09; 一、總結 一句話總結&#xff1a;a、在img標簽中添加data-echo屬性加載真實圖片&#xff1a;<img class"loading" src"blank.gif" data-echo"圖片真實路徑" />&#xff0c;在…

還原出廠設置 擦除frp_如何備份,擦除和還原Apple Watch

還原出廠設置 擦除frpThe Apple Watch is, in its own right, a little tiny computer with data backup and security needs. Read on as we show you how to ensure your Apple Watch is backed up, wiped, and restored just like you’d do with your smartphone. Apple Wa…

exchange 2010 search mailbox 的幕后強大功能

鈴……….半夜中被一陣急促的手機鈴聲吵醒&#xff0c;年度服務客戶打來電話需要進行郵件的排查和刪除工作。問其原因&#xff0c;原來是組織中有人發了一封關于領導的不健康的郵件&#xff0c;并在企業內部進行了轉發&#xff0c;領導要求立即找出此類郵件并進行刪除。管理員深…

Apache HBase的現狀和發展

一、&#xff28;Base是什么 HBase(Hadoop Database)&#xff0c;是一個基于Google BigTable論文設計的高可靠性、高性能、可伸縮的分布式存儲系統。 它有以下特征&#xff1a; 1.HBase仍然是采用行存儲的&#xff0c;采用松散表的結構來獲得動態列的功能&#xff1b; 2.原生海…

Java的接口、繼承與多態

接口 java只支持單繼承&#xff0c;即一個類只能有一個父類&#xff0c;因此需要接口來實現多重繼承。 接口的定義 類和接口的區別&#xff1a;一個類通過繼承接口的方式&#xff0c;從而來繼承接口的抽象方法。類描述對象的屬性和方法&#xff0c;接口則包含類要實現的方法。 …

dvd刻錄軟件_如何在Windows 7中刻錄照片和視頻DVD(無需額外的軟件)

dvd刻錄軟件Software like DVD Flick is great for burning video to DVDs, but Windows 7 actually includes built-in DVD burning software. Strangely, it’s the last time the company did so—while Windows 8 and Windows 10 can play back DVD movies, they can’t cr…

如何實現office不同語言界面切換

前面我討論了《如何實現win7不同語言界面切換》&#xff0c;很巧今天又有網友問到如何實現 office的語言界面切換呢。嘿&#xff0c;那我們就繼續來玩轉界面吧。 office2007和office2010也支持輕松的進行語言界面切換&#xff0c;操作步驟也很簡單。 Office 語言界面包 (LIP) 是…

Mysql-高可用集群[MyCat中間件使用](三)

服務器-節點: 4臺 mysql-主: 192.168.2.40mysql-從-node-0: 192.168.2.41mysql-從-node-1: 192.168.2.42mycat: 192.168.2.45操作過程 1.搭建mysql主從節點2.搭建mycat中間件節點3.mycat服務配置4.測試讀寫分離,讀的分發1.搭建mysql主從節點 Mysql-高可用集群主從單一模式-binl…

yum安裝mysql5.6

1.檢查系統是否安裝其他版本的MYSQL數據 yum list installed | grep mysql yum -y remove mysql-libs.x86_64 2.安裝及配置 wget http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm rpm -ivh mysql-community-release-el6-5.noarch.rpm yum repolist all | grep…

離開互聯網行業_如何使用互聯網再也不會離開家

離開互聯網行業Thanks to the Internet, activities like “going outside” or “being a productive member of the community” are becoming increasingly optional parts of daily life. When your inner hermit feels like putting on his vampire cape, simple tricks l…

iOS 11開發教程(十三)iOS11應用編輯界面添加視圖

iOS 11開發教程&#xff08;十三&#xff09;iOS11應用編輯界面添加視圖 在iOS中添加視圖的方式有兩種&#xff1a;一種是使用編輯界面添加視圖&#xff1b;另一種是使用代碼添加視圖。以下是這兩個方式的詳細介紹。 1.編輯界面添加視圖 使用編輯界面添加視圖是一個相當簡單的工…

限流算法(記錄cyc大佬的專欄)

限流的必要性 如果一段時間內請求的數量過大&#xff0c;就會給服務器造成很大壓力&#xff0c;可能導致服務器無法提供其它服務。 計數器算法 通過一個計數器 counter 來統計一段時間內請求的數量&#xff0c;并且在指定的時間之后重置計數器。該方法實現簡單&#xff0c;但是…

bzoj 1024 [ SCOI 2009 ] 生日快樂 —— 遞歸

題目&#xff1a;https://www.lydsy.com/JudgeOnline/problem.php?id1024 因為每次把一塊切成兩塊&#xff0c;所以可以枚舉從哪里切開&#xff0c;然后遞歸求解&#xff1b; 一開始用了不太對的貪心思路&#xff0c;想著一定去切較長邊&#xff0c;但看來不一定。 代碼如下&a…

HBase存儲剖析與數據遷移

1.概述 HBase的存儲結構和關系型數據庫不一樣&#xff0c;HBase面向半結構化數據進行存儲。所以&#xff0c;對于結構化的SQL語言查詢&#xff0c;HBase自身并沒有接口支持。在大數據應用中&#xff0c;雖然也有SQL查詢引擎可以查詢HBase&#xff0c;比如Phoenix、Drill這類。但…

windows os x_如何立即在OS X上獲取Windows樣式的窗口捕捉

windows os xApple’s recent announcement that the upcoming OS X release (El Capitan or 10.11) will finally, at long last, come with the ability to snap windows to your screen edges. A feature Windows users have enjoyed since 2009. 蘋果公司最近宣布即將發布的…

Install Odoo 11 on CentOS 7

2019獨角獸企業重金招聘Python工程師標準>>> Odoo is the most popular all-in-one business software in the world. It offers a range of business applications including CRM, website, e-Commerce, billing, accounting, manufacturing, warehouse, project m…