当前位置: 首页 > news >正文

1300*C. Rumor(并查集贪心)

解析:

        并查集,求每个集合的最小费用。

         每次合并集合的时候,根节点保存当前集合最小的费用。 

#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N=1e5+5;
int n,m,a[N],p[N],cnt[N];
int find(int x){return x==p[x]?x:p[x]=find(p[x]);
}
signed main(){scanf("%lld%lld",&n,&m);for(int i=1;i<=n;i++){scanf("%lld",&a[i]);p[i]=i;}while(m--){int x,y;scanf("%lld%lld",&x,&y);x=find(x),y=find(y);if(a[x]<=a[y]) p[y]=x;else p[x]=y;}int ans=0;for(int i=1;i<=n;i++){if(i==p[i]) ans+=a[i];}printf("%lld",ans);return 0;
}
http://www.lryc.cn/news/182278.html

相关文章:

  • python实用小代码(数据分析向)
  • 【oncmdmsg 鼠标】2023/8/19 上午9:50:14
  • 插入排序:简单而有效的排序方法
  • OpenGL之光照贴图
  • 隐私交易成新刚需,Unijoin 凭什么优势杀出重围?
  • 小谈设计模式(12)—迪米特法则
  • Foxit PDF
  • 《Python趣味工具》——ppt的操作(刷题版)
  • 实战型开发--3/3,clean code
  • 家用无线路由器如何用网线桥接解决有些房间无线信号覆盖不好的问题(低成本)
  • 【Golang】网络编程
  • 使用策略模式优化多重if/else
  • 逆强化学习
  • postgresql新特性之Merge
  • 【注解】注解解析与应用场景
  • mysql面试题14:讲一讲MySQL中什么是全同步复制?底层实现?
  • Linux驱动设备号分配与自动创建设备节点
  • 基于MFC和OpenCV实现人脸识别
  • 力扣 -- 377. 组合总和 Ⅳ
  • 阿里云新账户什么意思?老用户、产品首购详细说明
  • C++ YAML使用
  • 十二、Django之模板的继承+用户列表
  • wzsc_文件上传(条件竞争)
  • unplugin-vue-components和unplugin-auto-import插件
  • docker系列文章目录
  • 第80步 时间序列建模实战:GRNN回归建模
  • 《C和指针》笔记33:指针数组
  • C/C++字符函数和字符串函数详解————内存函数详解与模拟
  • CAcUiDockControlBar初始位置 2023/8/19 下午3:51:18
  • CDH6.3.2 的pyspark读取excel表格数据写入hive中的问题汇总