P3367 【模板】并查集

【题解-洛谷】P3367 【模板】并查集 如题,现在有一个并查集,你需要完成合并和查询操作。的操作,都有一行输出,每行包含一个大写字母,为。是否在同一集合内,是的输出。行,每行包含三个整数。 阅读详情
题目链接:点击进入
题目
思路
代码(路径压缩)
#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e6 + 10;

int n,m,fa[maxn];

int find(int x)
{
    if(x==fa[x]) return x;
    else return fa[x]=find(fa[x]);
}

int unions(int x,int y)
{
    int fx=find(x);
    int fy=find(y);
    if(fx!=fy)
    {
        fa[fx]=fy;
        return 0;
    }
    else return 1;
}


int main()
{
	ios::sync_with_stdio(false);
	cin.tie(0);cout.tie(0);
	cin>>n>>m;
	for(int i=1;i<=n;i++) fa[i]=i; 
	for(int i=1;i<=m;i++)
	{
		int op,x,y;
		cin>>op>>x>>y;
		if(op==1) 
			unions(x, y);
		else 
		{ 
			int fx=find(x),fy=find(y); 
			if(fx==fy) cout<<"Y"<<endl; 
			else cout<<"N"<<endl; 
		}
	}
	return 0; 
} 
代码(路径压缩+按秩合并)
#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e6 + 10;

int n,m,fa[maxn],size[maxn];

int find(int x)
{
    if(x==fa[x]) return x;
    else return fa[x]=find(fa[x]);
}

int unions(int x,int y)
{
    int fx=find(x);
    int fy=find(y);
    if(fx!=fy)
    {
    	if(size[fy]<size[fx]) 
			swap(fx, fy); 
		size[fy]+=size[fx];
		fa[fx]=fy; 
        return 0;
    }
    else return 1;
}


int main()
{
	ios::sync_with_stdio(false);
	cin.tie(0);cout.tie(0);
	cin>>n>>m;
	for(int i=1;i<=n;i++) fa[i]=i,size[i]=1; 
	for(int i=1;i<=m;i++)
	{
		int op,x,y;
		cin>>op>>x>>y;
		if(op==1) 
			unions(x, y);
		else 
		{ 
			int fx=find(x),fy=find(y); 
			if(fx==fy) cout<<"Y"<<endl; 
			else cout<<"N"<<endl; 
		}
	}
	return 0; 
} 
施耐德 Modicon M580 ePAC 项目实战:从硬件选型到 Control Expert V15 组态 本文详细解析了施耐德 Modicon M580 ePAC 在工业自动化项目中的实战应用,从硬件选型到 Control Expert V15 组态的全流程。重点介绍了水处理站控制系统的硬件配置、网络架构设计、软件安装授权及程序框架开发,帮助工程师高效实施中大型控制系统项目。 阅读详情

相关推荐

RTDETR多模态融合实战:基于注意力机制的红外与可见光目标检测优化

本文深入探讨了基于RTDETR模型的红外与可见光多模态目标检测优化方案。针对复杂光照下的检测难题,文章提出并实战演示了如何利用注意力机制(如SimAM与交叉注意力)实现RGB与IR特征的智能动态融合,从而构建更鲁棒的“全天候”检测系统,有效提升安防、自动驾驶等场景在夜间及恶劣天气下的检测精度与可靠性。

weixin_29083373的博客 188

【并查集】P3367 【模板】并查集

本文介绍了并查集数据结构的实现及其应用。并查集支持两种主要操作:find查询元素所属集合和Union合并两个集合。代码实现包括路径压缩优化和按秩合并策略,初始化时间复杂度O(N),查询和合并操作均接近O(1)。该算法适用于处理大规模数据(N≤2×10^5,M≤10^6)的集合合并与查询问题,典型应用包括判断元素连通性等。示例输入输出展示了其基本操作流程。

lhr056813的博客 453

化学科学催化反应产率预测之Transformer建模SMILES(Datawhale AI 夏令营)

循环神经网络:由于所有的前文信息都蕴含在一个隐向量中,随着序列长度的增加,早期的上下文信息会逐渐被遗忘。卷积神经网络:受限的上下文窗口在建模长文本时存在天然不足。需要多层卷积操作才能处理长文本。在本篇文章中,我们学习了Transformer的基本架构及其在化学反应产率预测中的应用。通过利用Transformer的Encoder部分对SMILES进行建模,我们能够更有效地捕捉序列数据的特征,从而提高模型的预测性能。

不想宅的冷同学 1095

并查集模板p3367

并查集模板题 洛谷题号p3367 题目链接 并查集是通过不断将一棵树上的节点与它的父亲节点合并而弄成几个大的集合,以判断几个点是不是在同一个集合内部。 题目描述:如题,现在有一个并查集,你需要完成合并和查询操作。 代码 #include <iostream> using namespace std; int parent[10000]; int find(int x) { if(x==parent[x]) { return x; } else

hhhhh2222222的博客 148

Android Framework 开发工程师职位深度解析与面试指南

摘要:博泰车联网科技(上海)股份有限公司招聘Android Framework开发工程师,负责车载系统的底层开发与优化。岗位要求5年以上经验,深入掌握Android Framework机制(WindowManager、PowerManager等模块),熟悉高通平台中间件架构及NDK/JNI开发,具备性能优化(启动时间、ANR处理)、OTA升级等能力。需熟练使用Android Studio、Git等工具,有车载开发经验者优先。工作内容包括Framework定制开发、问题排查及技术文档编写。

郑伟强dev的专栏 551

基于物联网技术设计的微型消防小车控制系统(STM32+ESP8266局域网)(181)

基于物联网技术的小微型消防车控制系统。通过远程控制功能,用户能够灵活操作消防车的行驶,方便快速抵达火灾现场。环境感知功能实时采集烟雾浓度、温湿度信息,为灭火决策提供科学依据。火源定位功能采用自动和手动两种模式,准确迅速地定位火源,并通过报警提示用户。灭火功能则根据火源定位结果,自动或手动启动干粉灭火器进行高效灭火。这些功能的结合实现了对小型火灾的全面应对,提升了消防效率与安全性,减少了火灾带来的损失。通过本项目的设计与实现,为消防领域提供了一种创新且实用的解决方案。

3079

洛谷 P3367 【模板】并查集

洛谷 P3367 【模板】并查集 题目 见题目链接 题目链接【模板】并查集 - 洛谷 输入 见题目链接 输出 见题目链接 样例 见题目链接 题解 并查集模版题,参考朋友圈(并查集) 区别在于寻找根节点的函数中,路径压缩由for循环的形式变成了递归的形式,从效率上来讲可能会好一点点 可能是一个常数级别的优化吧,我猜的 代码 #include <stdio.h> #define MAX ...

有学上就行.jpg 279

《用 R 探索医药数据科学》目录(持续更新,已超 250 万字)|订阅前说明

我们重磅推出《用 R 探索医药数据科学》专栏!本文作为专栏【订阅后首读】的核心内容,堪称开启学习之旅的 “入门钥匙”,也是整个专栏最关键的一篇指引文。文中不仅完整呈现了专栏 9 大核心篇章 + 问答板块的详细目录,更囊括了订阅后必知的核心要点 —— 从阅读设备、实操工具的使用建议,到学习路径、更新规则的清晰说明,再到问题反馈、感悟记录的实用方法,一站式帮你摸清专栏框架、找准学习方向。建议各位订阅者务必认真阅读、吃透内容,这能让你后续的学习更高效、少走弯!

MD Code 1万+

并查集 P3367 【模板】并查集

P3367 【模板】并查集 #include<iostream> #include<algorithm> #include<cstdio> #include<cstring> #include<cmath> #include<cstdlib> using namespace std; int n,m,zi,...

weixin_30747253的博客 118

AI 智能体(Agent)应用开发工程师 · 进阶面试 (五)

在有多位 Agent 共同参与决策时(如评审委员会、代码审查小组),它们可能提出截然相反的建议。共识机制就是用来在这种冲突中得出唯一行动方案的规则。常用机制:多数投票:每个 Agent 一票,根据投票结果决定。实现简单,但忽略了专业度差异。加权投票:根据 Agent 的角色重要性或历史表现赋予不同权重,例如首席架构师 Agent 的票权重是普通开发者 Agent 的 2 倍。管理者仲裁:由一个权限更高的 Manager Agent 听取各方理由后做出最终裁决。这类似于层级制组织决策。辩论收敛。

篮球界最会写bug的人;程序猿中打球最菜的人。 393

AutoSAR配置视频讲解:新建DaVinci工程

AutoSAR实验视频讲解:闪烁一颗LED实验【新建DaVinci工程】 上一篇 | 下一篇 | 总目录 实验架构图 视频本频放在了文末,下图描述了本次实验配置内容在AutoSAR架构中的位置,供大家参考 实验内容 本节课程讲解新建DaVinci工程,听上去新建工程很简单,但是还是需要很多的准备工作和细节。主要内容是新建工程和导入dbc文件和导入arxml文件的方法 主要步骤 新建DaVinci工程 导入.dbc通信矩阵文件 导入Mcal的arxml文件 实验视频2:Mcal配置 提示:版权所在,违

雪云飞星的博客 6275

洛谷—题解 P3367 【模板】并查集

原题链接 P3367 【模板】并查集 【模板】并查集 题目描述 如题,现在有一个并查集,你需要完成合并和查询操作。 输入输出格式 输入格式: 第一行包含两个整数N、M,表示共有N个元素和M个操作。 接下来M行,每行包含三个整数Zi、Xi、Yi 当Zi=1时,将Xi与Yi所在的集合合并 当Zi=2时,输出Xi与Yi是否在同一集合内,是的话输出Y;否则话输出N 输出格式: 如上,对于每一个Zi=2的操...

qq_41616301的博客 529

032、准谐振反激变换器(QR-Flyback)原理

文章摘要: 本文以65W PD快充炸管案例切入,解析准谐振反激变换器(QR-Flyback)原理。通过主动利用漏感与MOS结电容的谐振,在Vds波谷开通实现近似ZVS,显著降低开关损耗与电压应力。对比传统反激,QR模式轻载效率提升8%,Vds尖峰减少23%。关键设计要点包括:变压器漏感需<3%、谷底检测电路需抗干扰、启动阶段需防过冲。推荐NCP1340等专用控制芯片,并强调VCC电容优选低ESR陶瓷材质。QR适用于30W-150W场景,其核心优势在于轻载效率优化,但需平衡漏感控制与可靠性。作者结合实测数据与

Jack010169的博客 112

洛谷 P3367 【模板】并查集 C++

对于 100% 的数据,1≤N≤2×10 5 ,1≤M≤10 6 ,1≤X i ​ ,Y i ​ ≤N,Z i ​ ∈{1,2}。当 Z i ​ =2 时,输出 X i ​ 与 Y i ​ 是否在同一集合内,是的输出 Y;对于每一个 Z i ​ =2 的操作,都有一行输出,每行包含一个大写字母,为 Y 或者 N。接下来 M 行,每行包含三个整数 Z i ​ ,X i ​ ,Y i ​。对于 50% 的数据,1≤N≤10 4 ,1≤M≤2×10 5。对于 35% 的数据,N≤100,M≤10 3。

Donald_wsn的博客 501

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

洛谷P3367 【模板】并查集

本文介绍了洛谷P3367并查集模板题的解法。并查集通过初始化每个元素为独立集合,支持合并和查找操作。解题思路包括:初始化父节点数组,使用路径压缩优化的find函数查找祖先,通过xzk函数合并集合。主程序处理输入后,根据操作类型进行合并或判断集合关系。最终输出Y或N表示元素是否同属一个集合。代码简洁高效,适合初学者理解并查集的基本实现原理。

xzk20121002的博客 507

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

洛谷P3367 【模板】并查集题解

在主函数中,读入元素个数 n 和操作个数 m 后,进行 m 次操作。当 z == 1 时,将 x 和 y 所在集合的根节点合并,即 fa[fx] = fy;当 z == 2 时,判断 x 和 y 的根节点是否相同,相同则输出 Y ,表示在同一集合,否则输出 N。如果 fa[x] 等于 x ,那么就说明 x 就是根节点,直接返回 x;所以我们先定义一个数组 fa 来存储每个元素的父节点,初始化时每个元素的父节点就是它自己,即 fa[i] = i。的操作,都有一行输出,每行包含一个大写字母,为。

aierxiang的博客 356

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

上一篇: P3372 【模板】树状数组 3( 区间修改 + 区间查询 )
下一篇: B3647 【模板】Floyd
Cosmic_Tree
博客等级 码龄7年 134粉丝 337原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值