首页 > 其他分享 >déce. 19 最小生成树

déce. 19 最小生成树

时间:2022-12-19 21:00:34浏览次数:53  
标签:ch 19 最小 ce int long getchar

https://www.luogu.com.cn/problem/P2330

题设就已经吧最小生成树的思想写出来了
其实就是个贪心

一遍过

#include<bits/stdc++.h>
using namespace std;
#define in Read()
typedef long long ll;

int in{
    int i=0,f=1; char ch=0;
    while((ch<'0'||ch>'9')&&ch!='-') ch=getchar();
    if(ch=='-') f=-1, ch=getchar();
    while('0'<=ch&&ch<='9') i=(i<<1)+(i<<3)+ch-48, ch=getchar();
    return i*f;
}

const int N=1e5+5;
struct edge{
    int u,v,c;
    edge(){};
    edge(int U,int V,int C){ u=U, v=V, c=C;}
}e[N];
int n,m,cnt,fa[N];

bool cmp(const edge &a, const edge &b){return a.c<b.c;}

int get(int x){return fa[x]==x?x:fa[x]=get(fa[x]);}

int main(){

    // freopen("1.in","r",stdin);

    n=in,m=in;
    for(int i=1;i<=m;++i){
        int u=in,v=in,c=in;
        e[++cnt]=edge(u,v,c);
    }

    cnt=0;
    sort(e+1,e+m+1,cmp);
    for(int i=1;i<=n;++i) fa[i]=i;

    for(int i=1;i<=m;++i){
        int u=get(e[i].u), v=get(e[i].v);
        if(u==v) continue;
        ++cnt;
        fa[u]=v;
        if(cnt==n-1){
            printf("%d %d\n",cnt,e[i].c);
            return 0;
        }
    }
    
}

标签:ch,19,最小,ce,int,long,getchar
From: https://www.cnblogs.com/antimony-51/p/16993046.html

相关文章

  • Centos7配置IP地址教程
    原文地址:https://baijiahao.baidu.com/s?id=1709870149261849693&wfr=spider&for=pc有关于centos7获取IP地址的方法主要有两种,1:动态获取ip;2:设置静态IP地址  在配......
  • 闲话 22.12.19
    闲话今天闲话水点就水点吧也习惯了不是吗今天在随机歌看到情绪的一首歌《无法停止的白情》曲调好熟悉好听!作词作曲编曲:春卷饭彳亍已经在循环了今日SAM!一阶微分......
  • Java执行操作系统命令-Process抽象类(1)
    Java8Windows10EclipseVersion:2022-09(4.25.0)-- 序章测试使用Java程序执行操作系统命令。ben发布于博客园需要用到抽象类Process://@sinceJDK1.0publ......
  • Kubernetes(k8s) kubectl certificate常用命令
    kubectl在$HOME/.kube目录中查找一个名为config的配置文件。可以通过设置KUBECONFIG环境变量或设置--kubeconfig参数来指定其它kubeconfig文件。本文主要介绍K......
  • 12.19
    今日内容1.Q查询进阶操作2.ORM查询优化3.ORM事务操作4.ORM常用字段类型5.ORM常用字段参数6.Ajax7.Content-Type8.ajax携带文件数据1.Q查询进阶操作Q:可以将多个......
  • 第二次学习C语言--2022.12.19
    接下来是一串Helloworld的代码编写#include<stdio.h>intmain(void){printf("HelloWorld!");return0;} int表明main()函数返回一个整数,void表明main()不带任......
  • 初探oceanbase和newsql数据库
    为什么是分布式数据库?互联网时代,数据已经成为企业运营的命脉。作为聚合支付的领军企业之一,李俶2021年受理交易金额3500亿,覆盖全国600+城市,服务110万+线下商户,日交易量2300......
  • 应用笔记 | TSMaster快速入门篇(3)-Trace窗口功能分析图解
    概述Trace窗口是做总线分析时最常用的窗口,主要用于记录总线测量时的各种活动。一、设置显示刷新率为了降低软件CPU占用率,Trace窗口提供了几种显示刷新率让用户选择。如下......
  • 1971. 寻找图中是否存在路径
    1971.寻找图中是否存在路径题解:并查集并查集模板题判断两个点是否在同一个连通块classSolution{int[]p=newint[200010];intfind(intx){......
  • Cesium自定义材质
    材质资料ApperanceCesium的材质封装在Cesium.MaterialAppearance/Cesium.Material类中。一般,Cesium的Primitive由GeometryInstance和Appearance组成,Geometry......