POJ1611基础带权并查集
题意:
有一个人生病了,和他一个社团或者间接和他有联系的人都会生病,问一共有多少人生病了。
思路:
比较简单和基础的题,带权并查集中的一种,就是记录更新集合元素个数,这个题目我是开始的时候每个人自己在自己的集合里,元素个数是1,然后在多开出来m个集合,让第i个社团直接映射到i+n个集合,元素个数一开始是0,然后就是简单更新了,还有就是注意下两个人已经属于同一个集合的时候就直接跳过,不用处理。
#include<stdio.h>
#include<string.h>
#define N 30000 + 500 + 10
int mer[N] ,sum[N];
int finds(int x)
{
return x == mer[x] ? x : mer[x] = finds(mer[x]);
}
int main ()
{
int n ,m ,i ,a ,k;
while(~scanf("%d %d" ,&n ,&m) && n + m)
{
for(i = 1 ;i <= n + m ;i ++)
{
if(i <= n) sum[i] = 1;
else sum[i] = 0;
mer[i] = i;
}
for(i = 1 ;i <= m ;i ++)
{
scanf("%d" ,&k);
int y = finds(i+n);
while(k--)
{
scanf("%d" ,&a);
++a;
int x = finds(a);
if(x == y) continue;
mer[x] = y;
sum[y] += sum[x];
}
}
int x = finds(1);
printf("%d\n" ,sum[x]);
}
return 0;
}
POJ1611基础带权并查集相关推荐
- P2294 [HNOI2005]狡猾的商人 带权并查集
顺便回顾下带权并查集. 在普通并查集的基础上维护一个d数组,表示权值. 这题d[i]表示当前节点x与其祖宗节点get(x), 的sm差值,即sm[x]-sm[get(x)] =d[x] 初始d均为0. ...
- hrbust 哈理工oj 1418 夏夜星空【带权并查集】
夏夜星空 Time Limit: 1000 MS Memory Limit: 65536 K Total Submit: 43(20 users) Total Accepted: 19(18 user ...
- 2017乌鲁木齐区域赛I(带权并查集)
#include<bits/stdc++.h> using namespace std; int f[200010];//代表元 long long rl[200010];//记rl[i] ...
- BZOJ 2303 方格染色(带权并查集)
要使得每个2*2的矩形有奇数个红色,如果我们把红色记为1,蓝色记为0,那么我们得到了这2*2的矩形里的数字异或和为1. 对于每个方格则有a(i,j)^a(i-1,j)^a(i,j-1)^a(i-1,j ...
- POJ1703带权并查集(距离或者异或)
题意: 有两个黑社会帮派,有n个人,他们肯定属于两个帮派中的一个,然后有两种操作 1 D a b 给出a b 两个人不属于同一个帮派 2 A a b 问a b 两个人关系 输出 同一个帮派 ...
- POJ1988(带权并查集,搬砖块)
题意: 可以这样理解,有n快方形积木,一开始都是单独的放到哪,然后有两种操作 1 M a b 把a所在的那一堆落到b所在那一堆的上面(一开始自己是一堆) 2 C a 问a下面有多少个积木 ...
- LA3027简单带权并查集
题意: 有n个点,一开始大家都是独立的点,然后给出一些关系,a,b表示a是b的父亲节点,距离是abs(a-b)%1000,然后有一些询问,每次询问一个节点a到父亲节点的距离是多少? 思路: ...
- hdu3234 带权并查集(XOR)
题意: 给你n个未知的正整数,有三总操作 I P V P的值是V I P Q V P XOR Q = V Q K ...
- hdu4829 带权并查集(题目不错)
题意: Information Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tot ...
最新文章
- google appengine的yaml文件,配置说明
- 究竟该不该“勃”!!!
- SpringCloud学习(七)高可用的分布式配置中心(Spring Cloud Config)(Finchley版本)
- ThreadLocal_OSIV模式_FIlter_Web ajax
- 当Tomcat遇上Netty,我这一系列神操作,同事看了拍手叫绝
- win10+python373安装pycrypto
- Factory Method工厂方法
- Windows 如何用命令终端(CMD)启动和停止 MySQL 数据库服务
- CSS中背景颜色、背景图片、渐变色、背景定位、精灵图(雪碧图)介绍
- [界面开发新秀]免费的AYUI,开发360领航版系列教程[2/40]
- iis php5.2 cgi,在PHP 5.2.6 / IIS CGI中清空$_POST数组
- plt导致的_tkinter.TclError: no display name and no $DISPLAY environment variable的问题
- 思科Smart Software Manager高权限登录凭证遭暴露
- linux的使用 --- 虚拟机创建CentOS(Intel VT-X)
- 数据分析面试:业务题
- 计算机word中如何左右缩进字符,【2人回答】Word文档怎么左右缩进两个字符?-3D溜溜网...
- pandas警告SettingWithCopyWarning: A value is trying to ...原理和解决方案
- Apache ab测试解析
- SpringBoot+Vue实现前后端分离的财务管理系统
- 菜鸟必知之网络安全常识