P2330
求瓶颈最小生成树,最小生成树应该求出来是满足它的最大边就是最小的吧(
为啥10pts (
#include<bits/stdc++.h>
using namespace std;
int n,m,tot,maxn;
int fa[1010];
struct edge{
int u,v,w;
} e[100010];
bool cmp(edge a,edge b) {
return a.w < b.w;
}
int find(int x) {
while (x != fa[x]) x = fa[x] = fa[fa[x]];
return x;
}
void kruscal() {
sort(e + 1,e + m + 1,cmp);
for (int i = 1;i <= m;i ++) {
int eu = e[i].u,ev = e[i].v,val = e[i].w;
if (find(eu) == find(ev)) continue;
fa[ev] = eu;
maxn = max(maxn,val);
if (++tot == n - 1) return ;
}
}
int main() {
cin >> n >> m;
for (int i = 1;i <= n;i ++) fa[i] = i;
for (int i = 1;i <= m;i ++) cin >> e[i].u >> e[i].v >> e[i].w;
kruscal();
cout << n - 1 << " " << maxn << endl;
return 0;
}