zoukankan      html  css  js  c++  java
  • P1547 Out of Hay 洛谷

    https://www.luogu.org/problem/show?pid=1547

    题目背景

    奶牛爱干草

    题目描述

    Bessie 计划调查N (2 <= N <= 2,000)个农场的干草情况,它从1号农场出发。农场之间总共有M (1 <= M <= 10,000)条双向道路,所有道路的总长度不超过1,000,000,000。有些农场之间存在着多条道路,所有的农场之间都是连通的。

    Bessie希望计算出该图中最小生成树中的最长边的长度。

    输入输出格式

    输入格式:

    两个整数N和M。

    接下来M行,每行三个用空格隔开的整数A_i, B_i和L_i,表示A_i和 B_i之间有一条道路长度为L_i。

    输出格式:

    一个整数,表示最小生成树中的最长边的长度。

    输入输出样例

    输入样例#1:
    3 3
    1 2 23
    2 3 1000
    1 3 43
    输出样例#1:
    43

     1 #include <algorithm>
     2 #include <iostream>
     3 #include <cstdio>
     4 #define maxn 100145
     5 
     6 using namespace std;
     7 
     8 int n,m,x,y,z,ans,tot;
     9 int fa[maxn];
    10 struct node
    11 {
    12     int u,v,w;
    13 }e[maxn];
    14 
    15 int find(int x)
    16 {
    17     return x==fa[x]?x:fa[x]=find(fa[x]);
    18 }
    19 
    20 bool cmp(node a,node b)
    21 {
    22     return a.w<b.w;
    23 }
    24 
    25 void Kruskal(int m)
    26 {
    27     for(int i=1;i<=n;i++)    fa[i]=i;
    28     sort(e+1,e+m+1,cmp);
    29     for(int i=1;i<=m;i++)
    30     {
    31         int fx=find(e[i].u),fy=find(e[i].v);
    32         if(fx!=fy)
    33         {
    34             tot++;
    35             fa[fx]=fy;
    36             ans=max(ans,e[i].w);
    37         }
    38         if(tot==n-1)    return ;
    39     }
    40 }
    41 
    42 int main()
    43 {
    44     scanf("%d%d",&n,&m);
    45     for(int i=1;i<=m;i++)
    46     {
    47         scanf("%d%d%d",&x,&y,&z);
    48         e[i].u=x,e[i].v=y,e[i].w=z;
    49     }
    50     Kruskal(m);
    51     printf("%d",ans);
    52     return 0;
    53 }
    Kruskal
    ——每当你想要放弃的时候,就想想是为了什么才一路坚持到现在。
  • 相关阅读:
    python
    HTTP和HTTPS协议,详解
    常用加密算法之非对称加密算法
    Docker容器数据卷-Volume详解
    使用nsenter进入docker容器后端报错 mesg: ttyname failed: No such file or directory
    Docker 查看容器 IP 地址
    Docker容器数据卷volumes-from
    Docker 进入容器的4种方法
    Jmeter之Bean shell使用(二)
    Jmeter之Bean shell使用(一)
  • 原文地址:https://www.cnblogs.com/Shy-key/p/6575064.html
Copyright © 2011-2022 走看看