kuangbin专题五 并查集 POJ 1213 How Many Tables
来源:互联网 发布:中文域名重要性 编辑:程序博客网 时间:2024/06/05 10:58
题意:
一个人生日,他决定叫他的朋友们来他家开派对,但是这些朋友当中有的不认识彼此,有的认识彼此,朋友们都希望与直接认识的人坐在同一桌,所以要你写个程序出来找到最小需要的桌子数。
题解:
基础并查集。
#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;const int MAXN=1e3+7;int f[MAXN];int size[MAXN];void init(){ for(int i=1;i<=1e3;i++) f[i]=i,size[i]=i;}int find(int p){ while(p!=f[p]) { f[p]=f[f[p]]; p=f[p]; } return p;}void Union(int p,int q){ int P=find(p); int Q=find(q); if(q==p) return ; if(size[P]>=size[Q]) { size[P]+=size[Q]; f[Q]=P; } else { size[Q]+=size[P]; f[P]=Q; }}int main(){ int n,m,t; scanf("%d",&t); while(t--) { init(); scanf("%d%d",&n,&m); for(int i=1;i<=m;i++){ int u,v; scanf("%d%d",&u,&v); Union(u,v); } int sum=0; for(int i=1;i<=n;i++) if(f[i]==i) sum++; printf("%d\n",sum); }}
阅读全文
0 0
- kuangbin专题五 并查集 POJ 1213 How Many Tables
- hdu 1213 How Many Tables ([kuangbin带你飞]专题五 并查集)
- HDU 1213 How Many Tables(kuangbin带你飞 专题五:并差集)
- kuangbin专题五 并查集 POJ3038 How Many Answers Are Wrong
- hdu 3038D - How Many Answers Are Wrong [kuangbin带你飞]专题五 并查集
- poj 1213 How Many Tables 并查集水题
- kuangbin专题五 并查集 POJ-1611 The Suspects
- kuangbin专题五 并查集 POJ 1456 Supermarket
- 【hdu1213】How Many Tables【并查集】
- How Many Tables(并查集)
- How Many Tables hdu1213 并查集
- hdu1213(How Many Tables 并查集)
- hdu_1213 how many tables (并查集)
- Hdu1213 - How Many Tables - 并查集
- HDU1213 How Many Tables 【并查集】
- 并查集---How Many Tables
- HDU1213 How Many Tables【并查集】
- HDU1213 How Many Tables 【并查集】
- 84. Largest Rectangle in Histogram
- 将一个视频转换为一个极坐标视频
- ThinkPhp 5 目录结构及基础配置详解
- 2017.12.10《“剑锋OI”普及组多校联盟系列赛(14)#Sooke#Kornal 的课余时间 》分析报告
- 通讯录改进(可以保存至文件并读取)
- kuangbin专题五 并查集 POJ 1213 How Many Tables
- Gossip算法学习笔记
- bonnie++安装报错zcav.cpp:
- 安装虚拟机教程(学习汇编语言)
- Digit Divide Numbers-LintCode
- 网络Cisco实验-动态路由协议配置
- java--数组2(重点)
- word怎么批量改图片大小 摘自百度经验
- Qt5信号与槽C++11风格连接简介