网站首页
编程语言
数据库
系统相关
其他分享
编程问答
反集
2024-03-25
并查集(反集)进阶 P1892 [BOI2003] 团伙
现在有 n 个人,他们之间有两种关系:朋友和敌人。我们知道:一个人的朋友的朋友是朋友一个人的敌人的敌人是朋友现在要对这些人进行组团。两个人在一个团体内当且仅当这两个人是朋友。请求出这些人中最多可能有的团体数。输入格式第一行输入一个整数 n 代表人数。第二行
2024-01-24
并查集与反集——P1892团伙
并查集并查集如其名,合并与查找查找intfind(intkey){ if(fa[key]==key)returnkey; elsereturnfa[key]=find(fa[key]);}合并voidunite(intx,inty){ intfax=find(x); intfay=find(y); fa[fax]=fay; return;}反集处理并查集合并问题的敌对/
2023-10-30
[学习笔记]扩展域并查集
扩展域并查集可以维护类似于P1892[BOI2003]团伙的题目。题目中有两种关系:朋友和敌人,并规定一个人的朋友的朋友是朋友一个人的敌人的敌人是朋友引入反集的概念,例如有三个人\(a,b,c\),他们的反集为\(a',b',c'\)。如果\(a,b\)为敌人,连接\(a,b'\)和\(a',b\);如果\(a,
2023-10-24
扩展域并查集详解
如有错漏之处,敬请各位奆佬指正!这是个比较冷门的数据结构。。。(其实很简单而且并不冷门)我是在做 P1892[BOI2003]团伙的时候听说的。那么,我就来讲解一下这个结构。updat2020-09-17准备开始扩写这篇文章一、预备知识并查集好像也没了...所以我说他很菜嘛...二、引