P1111 修復公路

2022-04-06 22:39:35 字數 1027 閱讀 7868

a地區在**過後,連線所有村莊的公路都造成了損壞而無法通車。**派人修復這些公路。

給出a地區的村莊數n,和公路數m,公路是雙向的。並告訴你每條公路的連著哪兩個村莊,並告訴你什麼時候能修完這條公路。問最早什麼時候任意兩個村莊能夠通車,即最早什麼時候任意兩條村莊都存在至少一條修復完成的道路(可以由多條公路連成一條道路)

輸入格式:

第1行兩個正整數n,m

下面m行,每行3個正整數x, y, t,告訴你這條公路連著x,y兩個村莊,在時間t時能修復完成這條公路。

輸出格式:

如果全部公路修復完畢仍然存在兩個村莊無法通車,則輸出-1,否則輸出最早什麼時候任意兩個村莊能夠通車。

輸入樣例#1:

4 4

1 2 6

1 3 4

1 4 5

4 2 3

輸出樣例#1:

5

n<=1000,m<=100000

x<=n,y<=n,t<=100000

最小生成樹模板題

1 #include2 #include3 #include4

5using

namespace

std;67

struct

edgee[200100

];10

intn,m;

11int far[5100

];12

intans,cnt;

1314

int find(int

a)15

18bool

cmp(edge a,edge b)

1922

23int

main()

2435 sort(e+1,e+m+1

,cmp);

36for(int i=1;i<=m;++i)

3747}48

if(cnt==(n-1)) cout<49else cout<<"-1"

;50return0;

51 }

P1111 修復公路

a 地區在 過後,連線所有村莊的公路都造成了損壞而無法通車。派人修復這些公路。給出a地區的村莊數 n 和公路數 m 公路是雙向的。並告訴你每條公路的連著哪兩個村莊,並告訴你什麼時候能修完這條公路。問最早什麼時候任意兩個村莊能夠通車,即最早什麼時候任意兩條村莊都存在至少一條修復完成的道路 可以由多條公...

P1111 修復公路

題目提供者該使用者不存在 標籤並查集 難度普及 提高 提交該題 討論 題解記錄 a地區在 過後,連線所有村莊的公路都造成了損壞而無法通車。派人修復這些公路。給出a地區的村莊數n,和公路數m,公路是雙向的。並告訴你每條公路的連著哪兩個村莊,並告訴你什麼時候能修完這條公路。問最早什麼時候任意兩個村莊能夠...

P1111 修復公路

aa地區在 過後,連線所有村莊的公路都造成了損壞而無法通車。派人修復這些公路。給出a地區的村莊數nn,和公路數mm,公路是雙向的。並告訴你每條公路的連著哪兩個村莊,並告訴你什麼時候能修完這條公路。問最早什麼時候任意兩個村莊能夠通車,即最早什麼時候任意兩條村莊都存在至少一條修復完成的道路 可以由多條公...