n个强盗,m表示警方的线索,接下来m行,每行两个整数a,b表示a强盗和b强盗是同伙,问一共有多少个团伙

样例输入:

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

样例输出:

3

程序代码:

#include<stdio.h>
int getf(int v);
void merge(int u,int v);
int f[110];
int main()
{int i,n,m,x,y,sum=0;scanf("%d%d",&n,&m);for(i=1;i<=n;i++)f[i]=i;for(i=1;i<=m;i++){scanf("%d%d",&x,&y);merge(x,y);}for(i=1;i<=n;i++)if(f[i]==i)sum++;printf("%d\n",sum);return 0;
}
int getf(int v)
{if(v==f[v])return v;f[v]=getf(f[v]);return f[v];
}
void merge(int u,int v)
{u=getf(u);v=getf(v);if(u!=v)f[v]=u;return;
}

啊哈算法-擒贼先擒王(并查集)相关推荐

  1. Kruskal算法与并查集

    Kruskal算法与并查集 一.Kruskal算法 1. 概念 Kruskal算法就是按照图中各个边上的权值大小进行递增排序,以此来构造最小生成树. 2.重点解析 在由Kruskal实现最小生成树的过 ...

  2. 简单易懂的并查集算法以及并查集实战演练

    文章目录 前言 一.引例 二.结合引例写出并查集 1. 并查集维护一个数组 2. 并查集的 并 操作 3. 并查集的 查 操作 4. 基本并查集模板代码实现--第一版(有错误后面分析) 4.1 Jav ...

  3. 算法总结 — 并查集

    参考:算法学习笔记(1) : 并查集 - 知乎 并查集 (disjoint set union) 是 最优美的数据结构之一 合并 (merge): 把两个集合合并 查找 (find): 查找一个元素的 ...

  4. 【算法】并查集的运用

    并查集的概念 朋友圈 团伙问题 连通图 总结 并查集的概念 并查集顾名思义就是合并和查找,问题在于合并什么,查找什么.这里有一种朴素的思想来解释这两个问题.就是把这个想成一棵树.合并什么?就是把不在这 ...

  5. 算法:并查集(四种方式)

    简单并查集 public class UnionFind {private int[] id;private int count;public UnionFind(int N) {count = N; ...

  6. Kruskal算法和并查集

    Kruskal算法 步骤: 第一步:给所有边按照从小到大顺序排列(直接使用库函数qsort / sort). 第二步:从小到大依次考察每条边(u,v),在执行第二步时会出现以下两种情况: 情况1:u和 ...

  7. 擒贼先擒王——并查集

    写一篇并查集的总文,详细介绍什么是并查集?思想是怎样的?怎么写出代码?如何对应题目? 1.什么是并查集 并查集被很多OIer认为是最简洁而优雅的数据结构之一,主要用于解决一些元素分组的问题.它管理一系 ...

  8. Java实现_算法_并查集

    并查集 作用:用来查找某个图中是否含有闭环. 比如图一: 上图中就是没有闭环的一个图,而下图(图二)就是一个有闭环的图 思路1-数组寻根法: 顾名思义,数组寻根法(自己称呼的)就是寻找每个节点的根节点 ...

  9. 【算法】并查集刷题总结

    目录 P1396 营救 题目描述 "咚咚咚--""查水表!"原来是查水表来了,现在哪里找这么热心上门的查表员啊!小明感动的热泪盈眶,开起了门-- 妈妈下班回家, ...

  10. python【数据结构与算法】并查集引入

    文章目录 1 并查集 2 策略 3 代码 1 并查集 Disjoint Set,实际上字面翻译是不相交的集合. 中文名 "并查集" 实际上源自其基本操作: union(X,Y):求 ...

最新文章

  1. 爬楼梯[LeetCode]
  2. c语言中如何表示矩阵的乘法,c语言矩阵相乘
  3. mysql 分区指定路径_[数据库]MySQL 指定各分区路径
  4. python实现单例模式的三种方法
  5. PHP学习笔记【9】_表达式
  6. oracle tnsnames.ora文件用法说明
  7. sharedpreferences使用方法_Google 推荐在 MVVM 架构中使用 Kotlin Flow
  8. Unity3D渲染系列之SkyBox天空盒
  9. xci转nsp工具_再谈xci、nsz、nsp
  10. 海康威视网页客户端登录过程浅析
  11. 题解 P2916 【[USACO08NOV]安慰奶牛Cheering up the Cow】
  12. mysql批量抽取数据_批量从数据库是提取数据,并显示出来。
  13. 写给自己:入职两个月的收获与变化
  14. mysql连接与嵌套查询_数据库之嵌套查询与连接查询
  15. 4年外包终上岸,我只能说这类公司以后能不去就不去
  16. mongo如何删除数据后相应的删除空间和内存占用
  17. 管理学30大经典理论
  18. FPGA入门学习笔记(十四)Vivado实现数码管段码显示以及动态扫描
  19. Flask-mongoengine 连接 MongoDB 数据库连接提示认证失败(认证数据库未配置)
  20. 由浅入深的了解高速数据采集卡

热门文章

  1. Exchange 2007的自动发现
  2. 数据库设计规范 zhuan
  3. 浅谈当前电信检测宽带共享的机制
  4. QT:创建一个widget,包含源文件,头文件,以及ui文件
  5. 获取skipcase
  6. Linux centosVMware shell编程 for循环、while循环、break跳出循环、continue结束本次循环、exit退出整个脚本...
  7. SQL2008R2 收缩数据库问题 - 日志文件不变小
  8. UITableViewCell点击不能push解决方法
  9. 测试基础【第二篇】软件测试模型
  10. Apache的多处理模块MPM