SDNU 1217 CD收藏——并查集

Description

lmh平常爱听歌,所以买了很多的CD来收藏,但是因为平常整理不当,所以忘记了这些CD的歌手是谁。现在他想知道他到底收藏了多少位歌手的专辑,于是他想了一个办法,同时拿出两个CD来听,可以分辨出来是否为同一个歌手唱的。(如果没有说明则认为是没有分辨出来,为不同歌手)现在他列了一个表记录哪些专辑是同一歌手,但他面对着这一堆记录不知如何处理,请你告诉他到底他有多少个歌手的专辑。

Input

    第一行n,m。n表示CD的个数(标号分别为1到n),m表示lmh所分辨出来的共有几组。接下来的m行每一行有两个数a,b。表示a唱片和b唱片是同一个歌手。(1<=n,m<=10000)

Output

    总计的歌手数量。

Sample Input

10 9
1 2
3 4
5 2
4 6
2 6
8 7
9 7
1 6
2 4

Sample Output


3

#include <iostream>
#include <math.h>
#include <algorithm>
#include <stdio.h>
using namespace std;
int find(int x)
{return x==f[x]?x:f[x]=find(f[x]);
}
void merge(int x,int y)
{x=find(x),y=find(y);if(x!=y) f[x]=y;
}
int main()
{//freopen("in.txt","r",stdin);int n,m,x,y,ans;cin>>n>>m;for(int i=1;i<=n;i++) f[i]=i;for(int i=1;i<=m;i++){cin>>x>>y;merge(x,y);}for(int i=1;i<=n;i++)if(f[i]==i) ans++;cout<<ans<<endl;
}

 

转载于:https://www.cnblogs.com/fantastic123/p/8933268.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/280486.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

国际知名计算机视觉和机器学习软件开源平台OpenCV正式支持龙架构

前言介绍近期&#xff0c;OpenCV开源社区正式合入了对龙架构&#xff08;LoongArch™&#xff09;支持的代码&#xff0c;基于龙架构自主指令系统&#xff0c;优化后的OpenCV性能显著提升。OpenCV是一款跨平台的计算机视觉和机器学习软件平台&#xff0c;在计算机视觉领域广泛使…

优化器--牛顿法总结

---这里记录下一些关于牛顿法来作为优化器的个人笔记 &#xff1a;&#xff09; 关于牛顿法&#xff0c;先不说其中的概念&#xff0c;来简单看一个例子&#xff1f; 不用计算器&#xff0c;如何手动开一个值的平方根&#xff0c;比如计算{sqrt(a) | a4 } &#xff1f; 不用程序…

在命令提示符输出c语言代码_您可以在Windows命令提示符中更改输出缓冲区的大小吗?...

在命令提示符输出c语言代码If you are someone who loves using the Windows Command Prompt, you may have found yourself curious as to why the screen output buffer has such a ‘large’ default size. Can you change it to a smaller (or even larger) size? Today’…

django23:BS4/kindeditor上传图片

BS4 Beautiful Soup&#xff0c;Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式。 安装 pip3 install beautifulsoup4 使用 from bs4 import BeautifulSoup#html_doc为网页内容 soup Be…

设计模式——————观察者模式

工厂模式分为简单工厂&#xff0c;工厂和抽象工厂&#xff0c;三种工厂的实现是越来越复杂的。 观察者模式 本质上就是一种订阅/发布的模型&#xff0c;从逻辑上来说就是一对多的依赖关系。 什么意思呢&#xff1f;好比是一群守卫盯着一个囚犯&#xff0c;只要囚犯一有异动&…

SNMP简介

SNMP简介介绍SNMP的定义、目的、版本演进以及受益。 定义简单网络管理协议SNMP&#xff08;Simple Network Management Protocol&#xff09;是广泛应用于TCP/IP网络的网络管理标准协议。SNMP提供了一种通过运行网络管理软件的中心计算机&#xff08;即网络管理工作站&#xff…

详解vue生命周期及每个阶段适合进行的操作

VUE生命周期的四个阶段 create 创建 -------- 创建vue实例并初始化mount 挂载 -------- 把vue实例和视图进行关联update 更新 ------- 监听数据与视图的变化destroy销毁 ------- 销毁实例生命周期 --- 钩子函数 vue为上面的4个大的阶段提供了一个可编程的接口&#xff0c;我们可…

.Net 7 新编译器 ILC 简析

楔子&#xff1a;这个新编译器的全称是ILCompiler。是之前CoreRT项目合并过来的&#xff0c;在.Net 7成熟&#xff0c;并且可以产业化应用。本质&#xff1a;ILC编译器的本质除了构建CLR的所拥有的主要功能&#xff0c;还包含了对LLVM这种意图取代GCC编译器的操作&#xff0c;对…

mac 防止 下载 睡眠_如何暂时防止Mac进入睡眠状态

mac 防止 下载 睡眠Let’s say you start a big download, then go to bed. When you wake up, you realize your Mac went to sleep before finishing its job. Isn’t there some way to stop this? 假设您开始进行大量下载&#xff0c;然后上床睡觉。 当您醒来时&#xff0…

ubuntu安装chrome driver

首先下载Chrome Driver&#xff08;Firefox Driver的安装与该步骤相同&#xff09; 链接&#xff1a; http://chromedriver.storage.googleapis.com/index.html 接下来在控制台&#xff08;terminal&#xff09;上操作一下红色字体的指令&#xff1a; Install Unzipsudo apt-ge…

深入理解Spring异常处理

宜信技术学院1.前言相信我们每个人在SpringMVC开发中&#xff0c;都遇到这样的问题&#xff1a;当我们的代码正常运行时&#xff0c;返回的数据是我们预期格式&#xff0c;比如json或xml形式&#xff0c;但是一旦出现了异常&#xff08;比如&#xff1a;NPE或者数组越界等等&am…

基于React开发范式的思考:写在Lesx发布之际

例子&#xff1a;lesx-example webpack loader: lesx-loader 一些背景 现在前端框架已经呈现出React、Angular、Vue三足鼎立的局势&#xff0c;对于三者的对比以及技术选型的思考与争论也被讨论了非常多&#xff0c;比如知乎上的这个问题&#xff1a;react.js,angular.js,vue.j…

mac共享单个磁盘_如何与您的所有设备共享酒店的单个Wi-Fi连接

mac共享单个磁盘Many hotels still limit you to one or two Wi-Fi devices per room–a frustrating limitation, especially when traveling with someone else. Connection restrictions can apply anywhere you have to log into a Wi-Fi network via a portal instead of …

Python FastApi:快速建立docker容器/挂载共享文件夹/导入导出

一、目的 a.快速把原有fastapi代码部署到docker&#xff0c;让docker在server运行。 b.不涉及docker深入设置。 c.使用python第三方lib少或简单。 二、步骤 ps:请提前安装docker 1.新建Dockerfile&#xff0c;放入到项目根目录 a.Dockerfile没有后缀. b.准备好requireme…

PHP-FPM 与 Nginx 的通信机制总结

PHP-FPM 介绍 CGI 协议与 FastCGI 协议 每种动态语言&#xff08; PHP,Python 等&#xff09;的代码文件需要通过对应的解析器才能被服务器识别&#xff0c;而 CGI 协议就是用来使解释器与服务器可以互相通信。PHP 文件在服务器上的解析需要用到 PHP 解释器&#xff0c;再加上对…

Android——监听事件总结

各种监听事件 1.按钮 Button&#xff08;1&#xff09;点击监听btn_1.setOnClickListener(new View.OnClickListener() { &#xff08;2&#xff09;长按监听btn_1.setOnLongClickListener(new View.OnLongClickListener() { 2.单选框 RadioGroupradio_gp.setOnCheckedChangeLi…

ChatGPT 大智近妖,从宇宙人生到手搓光刻机,从哄女朋友到写年终总结我们聊得非常开心,反而让人越来越忧心...

都说 ChatGPT 要干掉程序员&#xff0c;清理搜索引擎&#xff0c;取代Stack Overflow&#xff0c;还能消灭人类&#xff0c;这些有些言过其实了。ChatGPT 的定位是一个人工智能助理&#xff0c;它说&#xff0c;它的主要目的是通过回答用户的问题&#xff0c;为用户提供帮助。在…

如何在Windows Defender中安排扫描

Windows Defender automatically performs background scans during your PC’s idle moments, but doesn’t include an easy way to schedule a full scan. There is a way to do it, though. Windows Defender在PC空闲时自动执行后台扫描&#xff0c;但是没有包括安排完整扫…

复习深入笔记02:魔法方法/cookie,session,token/异常

魔法方法 对象生成 1.先调用__new__方法&#xff0c;生成空对象。控制对象生成。 2.当执行“对象类名&#xff08;namelqz&#xff09;”&#xff0c;触发类的__init__()