首页
比赛
题库
课程
竞赛讨论区
登录
/
注册
去牛客
首页
>
【模板】并查集
4条解析
开通博客写题解
borwin
发表于 2024-02-27 00:54:34
(模板)并查集 题目描述: 体育课上,体育老师牛牛弄不清学生们都是哪个班级的,他只能随便找两个同学,问他们是不是一个班的,牛牛记下了属于同一个班的学生的序号,但是他弄不清自己教的班级的情况,请你帮助他。 假设体育老师的学生有n人,学号分别是1,2,...n,他的小本本记录了m行,每行记下了属于一个班
展开全文
雪地烤鹅
发表于 2024-11-24 11:39:57
考虑到题目需要求出人数最多的班级,也就是秩最大的班级,引入ranks数组记录,同时小挂大似乎也是一种优化,最后的班级数量再来一遍遍历,如果父节点是自身,说明它就是该集合的父节点(已经使用了路径压缩) #include<bits/stdc++.h> using namespace std;
展开全文
2004
发表于 2025-05-04 14:33:08
#include<iostream> using namespace std; const int N = 1e5+10; int f[N],g[N]; int find(int x) { if(f[x]!=x) return f[x]=find(f[x]); els
展开全文
牛客579577851号
发表于 2024-03-14 10:43:15
使用并查集,来记录所有人的关系 再将每个人的顶送入set中,set的长度就是班级数量 再用一个循环找到最大班级即可 #include <bits/stdc++.h> using namespace std; const int N = 100010; int st[N], f[N],
展开全文
查看本题
查看本题讨论
相关比赛
74747-Simple test 1
进入比赛
74785-2024寒假训练23级DAY3:并查集
进入比赛
79493-软件部落四月刷题挑战赛
进入比赛
90445-0910排位赛
进入比赛
99475-IT技术创新杯
进入比赛
等你来战
查看全部
第五届上海理工大学程序设计全国挑战赛
报名截止时间:2025-06-28 17:30
牛客周赛 Round 98
报名截止时间:2025-06-29 21:00
牛客小白月赛119
报名截止时间:2025-07-04 21:00
牛客周赛 Round 99
报名截止时间:2025-07-06 21:00
牛客练习赛142
报名截止时间:2025-07-11 21:30
牛客周赛 Round 100
报名截止时间:2025-07-13 21:00
2025牛客暑期多校训练营1
报名截止时间:2025-07-15 17:00
2025牛客暑期多校训练营2
报名截止时间:2025-07-17 17:00
扫描二维码,关注牛客
意见反馈
下载牛客APP,随时随地刷题