我觉得 这题 是纯粹的 并查集 可以算成 入门题吧

问你有几章桌子 就是问你有几个 连通块嘛 一个道理

    touch  me

这题 我采用了下 father[x]开始 初始化为-1

 1 #include <iostream>
 2 #include <cstring>
 3 using namespace std;
 4
 5 const int size = 1010;
 6 int father[size];
 7
 8 int find( int x )
 9 {
10     return father[x] == -1 ? x : father[x] = find( father[x] );
11 }
12
13 void Union( int x , int y )
14 {
15     x = find(x);
16     y = find(y);
17     if( x!=y )
18     {
19         father[x] = y;
20     }
21 }
22
23 int main()
24 {
25     int t , n , m , cnt , x , y;
26     cin >> t;
27     while( t-- )
28     {
29         cnt = 0;
30         cin >> n >> m;
31         memset( father , -1 , sizeof(father) );
32         while( m-- )
33         {
34             cin >> x >> y;
35             Union( x, y );
36         }
37         for( int i = 1 ; i<=n ; i++ )
38         {
39             if( father[i] == -1 )
40             {
41                 cnt ++;
42             }
43         }
44         cout << cnt << endl;
45     }
46     return 0;
47 }

View Code

转载于:https://www.cnblogs.com/radical/p/3908688.html

hdu--1231--并查集连分量的个数相关推荐

  1. hdu 5606(并查集)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5606 解题思路: 这题实际上是要找一些连通的节点,使得边上的权值都为0. 很明显,首先把权值为0的边都 ...

  2. HDU 5441并查集 by cyl

    HDU 5441 题意: ​ 杰克喜欢旅游,从城市a到城市b是他最喜欢的,现在有n个城市m个路. ​ 当杰克在从城市a到城市b 的时候需要坐车,但是需要有等待时间t,他无法忍受超过x 的等待时间. ​ ...

  3. hdu 1232 并查集

    并查集是我暑假从高手那里学到的一招,觉得真是太精妙的设计了.以前我无法解决的一类问题竟然可以用如此简单高效的方法搞定.不分享出来真是对不起party了.(party:我靠,关我嘛事啊?我跟你很熟么?) ...

  4. hdu 4907(并查集)

    Task schedule Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Pr ...

  5. hdu 2473(并查集+删除操作)

    解题思路:这道题有并查集的删除操作,如果直接对这一棵树进行删除节点操作肯定是很困难的.所以可以建立虚拟节点,只要有一个节点要被删除,就直接把它投影到虚拟节点上,即用这个虚拟节点来代替我们要删除的节点. ...

  6. hdu 3172(并查集+hash)

    解题思路:典型的并查集,只是每个人的名字要转换成数字,可以用map,也可以用字典树,我最开始用的字典树结果爆内存了.. 爆内存: #include<iostream> #include&l ...

  7. hdu 3081(并查集+最大流)

    题目大意: n个男孩n个女孩,女孩选男孩,每个女孩都要选到不同的人 k对女孩有相同选择标准, 女孩每轮都选择没选过的男孩, 问总共能选几轮.解题思路:女孩编号1......n,男孩编号n+1,n+2, ...

  8. hdu 5441 (并查集)

    题意:给你n个点,m条边构成无向图.q个询问,每次一个值,求有多少条路,路中的边权都小于这个值 a->b 和 b->a算两种 思路:把权值从小到大排序,询问从小到大排序,如果相连则用并查集 ...

  9. hdu 2545 并查集

    题目描述:给定一个无向图,判断这个图是否满足任意两点之间有且仅有一条通路. 思路:并查集,若a和b之间有一条边且处于不同的集合中,则将a和b所在集合合并:若a和b本就在同一集合中(有一条通路),则加上 ...

最新文章

  1. Shell 开发在运维中的经验总结
  2. python就业方向及工资-Python的5大就业方向,薪资诱人前景好!
  3. Ural(Timus) 1081. Binary Lexicographic Sequence
  4. JSP简单练习-猜字母游戏
  5. centos rpm 安装 perl_XtraBackup工具详解 Part 2 xtrabackup安装
  6. CSS动画示例(上一篇是CSS过渡…)
  7. vmware-vmx.exe无法结束进程_孤儿进程与僵尸进程产生原理分析,以及终极解决方案案例实现...
  8. 2013阿里技术嘉年华:阿里数据同步前世今生
  9. soultion of mySQL disk exceeded problem
  10. 【数据分享】错颌畸形生长患者治疗数据集
  11. 可以用php做出一个圆锥吗,PS使用渐变工具画一个立体圆锥
  12. 透明贴图原理--浅显易懂
  13. 2014互联网十大斗殴事件,看了我也是醉了~
  14. bug_ warning: control reaches end of non-void function
  15. 重绘回流个人理解版本
  16. 计算机基础知识(免费、全面)
  17. eui怎么在名字后面显示服务器,怀旧服EUI怎么调姓名版 设置血条的方法
  18. Android 程序员的技术栈大全(1),中高级Android面试题目汇总解答
  19. 传奇脚本显示服务器开区时间代码,GOM引擎该地图只限新区开放方法,传奇开区时设置老区不能进脚本...
  20. 互联网打印机协议IPP分析

热门文章

  1. BZOJ 2324: [ZJOI2011]营救皮卡丘(带上下限的最小费用最大流)
  2. 如何创建基本的高级队列之一:创建发送方代码
  3. PHP字符串函数大全
  4. Linux 服务器远程控制三剑客Telnet、SSH 和 VNC 之 VNC
  5. “软件宝宝”出生前,安全系列文章(一)
  6. mysql数据库的数据类型转换_MySQL 和Server 2000 数据库中数据类型的转换
  7. c++ enum 给定类型_C++11作用域内枚举enum
  8. linux进行monkey压力测试,App Monkey压力测试(一)
  9. 网站三级分销数据库如何设计,简单案例
  10. ElasticSearch统计总数据量