添加链接描述

#include<bits/stdc++.h>
using namespace std;
const int N=5e5+9;
int fa[N],sum[N],front[N];
int find(int x){if(x==fa[x])return fa[x];int fn=find(fa[x]);//先找到根front[x]+=front[fa[x]];//合并他的父节点return fa[x]=fn;//返回
}
int main(){for(int i=1;i<=5e5;i++){fa[i]=i;sum[i]=1;front[i]=0;}int T;cin>>T;while(T--){char ch;cin>>ch;int a,b;cin>>a>>b;if(ch=='M'){a=find(a),b=find(b);if(a!=b){front[a]+=sum[b];//a的前面加上b的队伍sum[b]+=sum[a];//b的队伍加上后面跟的asum[a]=0;//!!a为0fa[a]=b;//合并}}else {if(find(a)==find(b)){cout<<abs(front[a]-front[b])-1<<"\n";}else cout<<"-1\n";}}return 0;
}

P1196 [NOI2002] 银河英雄传说 (并查集 合并相关推荐

  1. 算法(并查集--合并集合)

    并查集–合并集合 一共有n个数,编号是1~n,最开始每个数各自在一个集合中. 现在要进行m个操作,操作共有两种: "M a b",将编号为a和b的两个数所在的集合合并,如果两个数已 ...

  2. 洛谷 P1196 [NOI2002]银河英雄传说 带权并查集

    https://www.luogu.org/problem/P1196 题目描述 公元五八○一年,地球居民迁至金牛座α第二行星,在那里发表银河联邦创立宣言,同年改元为宇宙历元年,并开始向银河系深处拓展 ...

  3. P1196 [NOI2002] 银河英雄传说(带边权并查集)

    P1196 [NOI2002] 银河英雄传说https://www.luogu.com.cn/problem/P1196 #include <iostream> #include < ...

  4. 【CF566#D】 Restructuring Company (并查集---合并区间操作)

    题干: Even the most successful company can go through a crisis period when you have to make a hard dec ...

  5. NOI银河英雄传说(并查集)

    问题: 解决: 思路上比较简单,利用并查集 1.合并操作,直接将两个元素所在的树合并,并且将新的树里每个元素到根节点的距离更新 2.查询操作,有两种情况 a.两元素不在同一棵树里,说明距离无法计算,输 ...

  6. 238. 银河英雄传说(并查集,扩展域)

    ​​​​​​238. 银河英雄传说 - AcWing题库 分析: 由于要求i,j战舰之间的距离,我们就应该想到拓展域 拓展域要实现: 能够计算第i艘战舰到第j艘战舰距离 我们可以用一个拓展域来存储战舰 ...

  7. Codeforces Gym 101194G Pandaria (2016 ACM-ICPC EC-Final G题, 并查集 + 线段树合并)

    题目链接  2016 ACM-ICPC EC-Final Problem G 题意  给定一个无向图.每个点有一种颜色. 现在给定$q$个询问,每次询问$x$和$w$,求所有能通过边权值不超过$w$的 ...

  8. 学习笔记——拓展域并查集和带权并查集

    1,拓展域并查集 一般的并查集只能查找出各元素之间是否存在某一种相同的联系,如:a和b是亲戚关系,b和c是亲戚关系,这时就可以查找出a和c也存在亲戚关系.但如果存在多种相对的联系时一般的并查集就不行了 ...

  9. bzoj 1050: [HAOI2006]旅行comf(codevs.cn 1001 舒适的路线) 快排+并查集乱搞

    没用的话:好像很久没发博客了,主要是懒太蒟找不到水题.我绝对没弃坑...^_^ 还用些话:本文为博主原创文章,若转载请注明原网址和作者. 进入正题: 先pa网址: bzoj :http://www.l ...

最新文章

  1. Apache Hive 快速入门 (CentOS 7.3 + Hadoop-2.8 + Hive-2.1.1)
  2. 企业数字化转型,AI平台能力建设是关键
  3. 创建非矩形的Windows 窗体
  4. Leetcode--322. 零钱兑换
  5. CentOS网络配置解决方案
  6. C语言头文件#includestdlib.h的作用
  7. 安装scrapy报错
  8. GDAL根据Shape文件切图(java)
  9. 软件体系结构六大质量属性-浅析淘宝网
  10. 万字干货:阿里巴巴是怎么做大数据算法应用测试的? | 凌云时刻
  11. 2023苏州科技大学计算机考研信息汇总
  12. 迅盘从入门到精通 彻底告别WIN7关机烦恼 T400亲测
  13. 什么是云平台_云短信发送平台有什么优势?
  14. java获取手机通讯录权限_Android读取手机通讯录联系人到自己项目
  15. Android Service的启动过程
  16. Vue3+ElementPlus网页端聊天|vue3.0仿微信/QQ界面实例
  17. GitHub 上传大小限制 大文件无法上传问题!
  18. Mask TextSpotter 算法笔记
  19. Oracle中一个汉字占几个字节
  20. 【嵌入式系统开发15】STM32F103C8T6下通过定时器Timer方式实现时间的精准控制,实现串口通信并让LED等周期性地闪烁

热门文章

  1. ISV的想法,用友全都懂
  2. postgresql10监控-使用EXTENSIONS模式
  3. shui jisfnemskddp psijsjfsif
  4. 将map中的key变小写
  5. [LGOJ5558]心上秋(倍增)
  6. 机顶盒显示该服务器未授权,户户通提示E04该频道未授权的解决办法
  7. 解决iOS 证书不受信任的问题
  8. 天池大赛-数智重庆比赛日志
  9. Gym - 100543G Virus synthesis Gym
  10. 程序员和自由工作者如何去找兼职