時間限制: 1 s
空間限制: 256000 kb
題目等級 : 大師 master
在某個遙遠的國家裡,有 n個城市。編號為 1,2,3,…,n。這個國家的**修建了m 條雙向道路,每條道路連線著兩個城市。**規定從城市 s 到城市t需要收取的過路費為所經過城市之間道路長度的最大值。如:a到b長度為 2,b到c 長度為3,那麼開車從 a經過 b到c 需要上交的過路費為 3。
佳佳是個做生意的人,需要經常開車從任意乙個城市到另外乙個城市,因此他需要頻繁地上交過路費,由於忙於做生意,所以他無時間來尋找交過路費最低的行駛路線。然而, 當他交的過路費越多他的心情就變得越糟糕。 作為秘書的你,需要每次根據老闆的起止城市,提供給他從開始城市到達目的城市,最少需要上交多少過路費。
輸入描述 input description
第一行是兩個整數 n 和m,分別表示城市的個數以及道路的條數。
接下來 m 行,每行包含三個整數 a,b,w(1≤a,b≤n,0≤w≤10^9),表示a與b之間有一條長度為 w的道路。
接著有一行為乙個整數 q,表示佳佳發出的詢問個數。
再接下來 q行,每一行包含兩個整數 s,t(1≤s,t≤n,s≠t), 表示開始城市s 和目的城市t。
輸出描述 output description
輸出共q行,每行乙個整數,分別表示每個詢問需要上交的最少過路費用。輸入資料保證所有的城市都是連通的。
樣例輸入 sample input
4 5
1 2 10
1 3 20
1 4 100
2 4 30
3 4 10
2 1 4
4 1樣例輸出 sample output
20 20
資料範圍及提示 data size & hint
對於 30%的資料,滿足 1≤ n≤1000,1≤m≤10000,1≤q≤100;
對於 50%的資料,滿足 1≤ n≤10000,1≤m≤10000,1≤q≤10000;
對於 100%的資料,滿足 1≤ n≤10000,1≤m≤100000,1≤q≤10000;
#include#include#include
#include
#define n 10007
#define m 100007
using
namespace
std;
int head[n],f[n][22],g[n][22
],fa[n],deep[n];
intn,m,ans,cnt,t,x,y;
struct
edge
e[m];
struct
node
}p[m];
inline
void add(int u,int to,int
dis)
inline
intread()
while(c>='
0'&&c<='9')
return x*f;
}void dfs(int now,int
from,int c,int
wa)}
inline
void
get_fa()
}int lca(int a,int
b) }
if(a==b) return
ret;
for(int i=20;i>=0;i--)
}ret=max(ret,max(g[a][0],g[b][0
]));
return
ret;
}inline
int find(int
x)int
main()
sort(p+1,p+m+1);int tot=0
;
for(int i=1;i<=n;i++) fa[i]=i;
for(int i=1;i<=m;i++)
if(tot==n-1) break
; }
t=read();
dfs(
1,0,0,0
);get_fa();
for(int i=1;i<=t;i++)
return0;
return0;
return0;
}
習題 codevs 1519 過路費 解題報告
今天拿了這道題目練練手,感覺自己 能力又增強了不少 我的思路跟別人可能不一樣。首先我們很容易就能看出,我們需要的邊就是最小生成樹演算法kruskal演算法求出來的邊,其餘的邊都可以刪掉,於是就有了這個kruskal選邊建圖的過程。1 struct kruskalsolvekr maxm 此處省略的內...
習題 codevs 1519 過路費 解題報告
今天拿了這道題目練練手,感覺自己 能力又增強了不少 我的思路跟別人可能不一樣。首先我們很容易就能看出,我們需要的邊就是最小生成樹演算法kruskal演算法求出來的邊,其餘的邊都可以刪掉,於是就有了這個kruskal選邊建圖的過程。1 struct kruskalsolvekr maxm 此處省略的內...
過路費 (最短路)
問題描述 有一天你來到了乙個奇怪的國家,它有 n 個城市,城市之間有若干條雙向道路連線,每條道路都有一定的費用,經過城市也要一定的費用。從乙個城市到達另乙個城市的總花費為路徑上費用最大的城市費用 包括起點和終點 加上路徑上所有的道路的費用。給出 q 次詢問,分別回答每次詢問中兩城市間的最少花費。保證...