围棋的棋子有黑色和白色两种,相同颜色的棋子如果是上下或左右相邻的,则称这两个棋子是连通的,直接或间接连通的棋子称为一块棋。
•现在,不断给出N个落棋子的信息(颜色、横坐标、纵坐标),问棋盘上有多少块棋?
#include<bits/stdc++.h>using namespace std;int n,m,ans;int num[1000101];//点的编号 int id[100010101];//点所在块的id void init(){//初始化 cin>>n>>m;for(int i=1;i<=n;i++){num[i]=id[i]=i;//开始的id都不相同 }ans=n;}int main(){init();for(int i=0;i<m;i++){int a,b,ida,idb;cin>>a>>b;ida=id[a];//a点在连通块id  idb=id[b];//b点在连通块id if(ida!=idb)//两个点在不同的连通块{for(int j=1;j<=n;j++){if(id[j]==ida){id[j]=idb;//改为相同的id }ans--;//连通块数减一 }}}cout<<ans;return 0;}

模板 31 : 并查集(围棋棋子连通)相关推荐

  1. 【模板】并查集 两种路径压缩写法(类模板和函数模板)

    并查集函数模板写法: #include <bits/stdc++.h> using namespace std; typedef long long ll; #define MAX_N 1 ...

  2. 洛谷 P3367 【模板】并查集

    嗯... 题目链接:https://www.luogu.org/problemnew/show/P3367 并查集可以支持的操作:"并"和"查".然后这道题主要 ...

  3. 【LibreOJ109】【模板】并查集

    并查集模板,就酱紫. #include<iostream> using namespace std; #define mod 998244353long long ans;int fa[4 ...

  4. 洛谷 P3367 ---- 【模板】并查集

    题目描述 给出一个并查集,请完成合并和查询操作. 输入格式: 第一行包含两个整数N.M,表示共有N个元素和M个操作. 接下来M行,每行包含三个整数Zi.Xi.Yi 当Zi=1时,将Xi与Yi所在的集合 ...

  5. 题解 P3367 【【模板】并查集】

    #include<iostream> #include<cstdio> using namespace std; int n,m,x,y,z; int f[150000]; / ...

  6. CF990G GCD Counting(树上莫比乌斯反演,分层图,并查集)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Problem 给定一棵点带权无根树,对于每个 k∈[1,2×105]k\in[1,2\times10 ...

  7. 7-3 最小生成树-kruskal (10 分)(思路+详解+并查集详解+段错误超时解决)宝 Come

    一:前言 本题需要用到并查集的知识,建议先学完并查集后再看看本题 二:题目 题目给出一个无向连通图,要求求出其最小生成树的权值. 温馨提示:本题请使用kruskal最小生成树算法. 输入格式: 第一行 ...

  8. 并查集的相关知识详解 Come baby!!!

    一:并查集的相关知识 这道题用到了并查集,所以我就学了一下并查集,所以把自己的见解也分享给大家(建议 先看视频 再浏览 博客 再自己敲一遍 学习效率高而已,我总是乱着来 以为看几篇博客就会了,其实最后 ...

  9. 7-25 朋友圈 (25 分)(详解+并查集的了解和应用)

    一:题目 某学校有N个学生,形成M个俱乐部.每个俱乐部里的学生有着一定相似的兴趣爱好,形成一个朋友圈.一个学生可以同时属于若干个不同的俱乐部.根据"我的朋友的朋友也是我的朋友"这个 ...

最新文章

  1. Linux中新建用户用不了sudo命令问题:rootr is not in the sudoers file.This incident will be reported解决
  2. eNSP模拟器路由器无法正常启动一直显示“#”——问题解决方法
  3. csharp: 百度语音合成
  4. swift Array 数组
  5. python random.choice报错_如何解决mtrand.RandomState.choice中的内存错误...
  6. EOS page问题
  7. JavaScript实现sieveOfEratosthenes埃拉托色尼筛选法算法(附完整源码)
  8. Spring注入总结
  9. CRM系统助家具企业华丽转身
  10. 计算机操作系统(9):深入理解B/S与C/S架构
  11. selenium 验证码——万能码的使用
  12. 《爬虫写得好,铁窗关到老》教你把握爬虫的法律边界!㊫
  13. c++实现决策树分类汽车评估数据集_R有监督机器学习-分类方法
  14. Chrome的插件扩展程序安装目录是什么?在哪个文件夹?
  15. 成功的人都很会控制自己的情绪
  16. drools rule (二) LHS语法详解
  17. 腾讯专访 | 子芽:代码疫苗技术,赋能数字化应用内生安全自免疫
  18. 《UNIX系统编程》
  19. Excel快速填充列
  20. 什么是视频监控平台的平台对接

热门文章

  1. 输出一个目录下的目录树
  2. Android AS下的OTG串口设备读写
  3. 买新笔记本电脑,RJ45接口还香吗
  4. 混淆矩阵,准确率,精确率,召回率,Roc曲线
  5. 总结一下word embedding
  6. Flink state缓存测试
  7. Matlab rng 命令的使用
  8. MCADEx开发 ProE二次开发 Creo二次开发 菜单创建
  9. Android HandlerThread例程
  10. Windows 终端配置(powershellcmdgit bash等等)