HDU 1213

第一题并查集纪念

#include <iostream>
using namespace std;
int f[1010];
int getf(int k){
    while(k!=f[k]){
        k=f[k];
    }
    return k;
}
void combine(int a,int b){
    int roota=getf(a);
    int rootb=getf(b);
    if(roota!=rootb)f[rootb]=roota;
}
int main(){
    int t,n,m,a,b;
    cin>>t;
    while (t--){
        cin>>n>>m;
        int num=0;
        for(int i=1;i<=n;i++)f[i]=i;
        while(m--){
            cin>>a>>b;
            combine(a,b);
        }
        for(int i=1;i<=n;i++){
            if(f[i]==i)num++;
        }
        cout<<num<<endl;
    }
return 0;}

HDU 1213,布布扣,bubuko.com

时间: 2024-09-29 17:43:44

HDU 1213的相关文章

[2016-03-15][HDU][1213][How Many Tables]

时间:2016-03-15 16:19:15 星期二 题目编号:[2016-03-15][HDU][1213][How Many Tables] 题目大意:请朋友吃饭,每个朋友都不喜欢和不认识的人在一桌,给出认识的关系,问至少要多少桌 输入: t组数 每组数据 n m m行 u v 表示u 和 v 认识 输出: 最少 分析:并查集,求集合的数目 #ifdef _WORK_ #include <vector> #include <list> #include <map>

HDU 1213 How Many Tables (并查集)

How Many Tables Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Status Practice HDU 1213 Appoint description:  System Crawler  (2015-05-25) Description Today is Ignatius' birthday. He invites a lot of friends. Now

hdu 1213 并查集入门

题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=1213 How Many Tables Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 12538    Accepted Submission(s): 6145 Problem Description Today is Ignatius' b

kuangbin专题五:C - How Many Tables HDU - 1213

C - How Many Tables HDU - 1213 Today is Ignatius' birthday. He invites a lot of friends. Now it's dinner time. Ignatius wants to know how many tables he needs at least. You have to notice that not all the friends know each other, and all the friends

HDU 1213: How Many Tables (in Java)

/** * @link http://acm.hdu.edu.cn/showproblem.php?pid=1213 * @author Sycamore * @date Aug, 18 */import java.util.*; class Main{ static int []parent=new int[1001]; static int find(int x) { return parent[x]=x==parent[x]?x:find(parent[x]); } static void

hdu 1213 并查集 水

http://acm.hdu.edu.cn/showproblem.php?pid=1213 做到一道网赛题 2-sat可写 貌似并查集也可写  但是并查集做法没想到 先水几道并查集重新理解下然后再去做 学到的就一点  Father数组中有些值一直保持最初的father[x] == x  最终集合的个数可以通过这个判断 #include <cstdio> #include <cstring> #include <algorithm> #include <iostr

HDU 1213 How Many Tables(模板——并查集)

题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1213 Problem Description Today is Ignatius' birthday. He invites a lot of friends. Now it's dinner time. Ignatius wants to know how many tables he needs at least. You have to notice that not all the fri

HDU 1213 How Many Tables (并查集,连通分支数,两种方式)

How Many Tables Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 23012    Accepted Submission(s): 11485 Problem Description Today is Ignatius' birthday. He invites a lot of friends. Now it's din

hdu 1213 How Many Tables(并查集算法)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1213 How Many Tables Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 13787    Accepted Submission(s): 6760 Problem Description Today is Ignatius' b