題目背景
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
code:
#include
const
int inf=0x3f3f3f3f;
int n,m,cnt,sum;
int vis[1005],head[1005],mincost[1005],mst[1005];
struct edgedge[200010];
void add(int x,int y,int t)
void prim(int x)
int main()
for(int i=1;i<=n;i++) mst[i]=inf;
for(int i=1;i<=n;i++) mincost[i]=inf;
cnt=0,vis[1]=1;
prim(1);
for(int i=1;i<=n;i++)
if(!vis[i])
printf("%d",sum);
return
0;}
P1111 修復公路
a地區在 過後,連線所有村莊的公路都造成了損壞而無法通車。派人修復這些公路。給出a地區的村莊數n,和公路數m,公路是雙向的。並告訴你每條公路的連著哪兩個村莊,並告訴你什麼時候能修完這條公路。問最早什麼時候任意兩個村莊能夠通車,即最早什麼時候任意兩條村莊都存在至少一條修復完成的道路 可以由多條公路連成...
P1111 修復公路
a 地區在 過後,連線所有村莊的公路都造成了損壞而無法通車。派人修復這些公路。給出a地區的村莊數 n 和公路數 m 公路是雙向的。並告訴你每條公路的連著哪兩個村莊,並告訴你什麼時候能修完這條公路。問最早什麼時候任意兩個村莊能夠通車,即最早什麼時候任意兩條村莊都存在至少一條修復完成的道路 可以由多條公...
P1111 修復公路
題目提供者該使用者不存在 標籤並查集 難度普及 提高 提交該題 討論 題解記錄 a地區在 過後,連線所有村莊的公路都造成了損壞而無法通車。派人修復這些公路。給出a地區的村莊數n,和公路數m,公路是雙向的。並告訴你每條公路的連著哪兩個村莊,並告訴你什麼時候能修完這條公路。問最早什麼時候任意兩個村莊能夠...