太难的搞不过,只能来写简单的了


POJ2524

无所不在的宗教

世界上宗教何其多。假设你对自己学校的学生总共有多少种宗教信仰很感兴趣。学校有n个学生,但是你不能直接问学生的信仰,不然他会感到很不舒服的。有另外一个方法是问m对同学,是否信仰同一宗教。根据这些数据,相信聪明的你是能够计算学校最多有多少种宗教信仰的。

【输入格式】

可以输入多个测试用例(Case),每一个用例的第一行包含整数n和m,n表示学生编号(1-n),在接下来的m行中,每一行包含两个整数,对应信仰同一宗教的两名学生的编号,输入结束行为n
= m=0。

【输出格式】

输出每一个测试用例中包含的学生信仰的最大宗教数量。

样例输入

  1. 10 9
  2. 1 2
  3. 1 3
  4. 1 4
  5. 1 5
  6. 1 6
  7. 1 7
  8. 1 8
  9. 1 9
  10. 1 10
  11. 10 4
  12. 2 3
  13. 4 5
  14. 4 8
  15. 5 8
  16. 0 0

样例输出

  1. Case 1: 1
  2. Case 2: 7

代码

  1. #include <iostream>
  2. using namespace std;
  3.  
  4. const int MAXN=;
  5. int pa[MAXN];
  6. int rank[MAXN];
  7.  
  8. void make_set(int x){
  9. pa[x] = x;
  10. rank[x] = ;
  11. }
  12.  
  13. int find_set(int x){
  14. if(x != pa[x]){
  15. pa[x] = find_set(pa[x]);
  16. }
  17. return pa[x];
  18. }
  19.  
  20. void union_set(int x,int y){
  21. x = find_set(x);
  22. y = find_set(y);
  23.  
  24. if(rank[x] > rank[y]){
  25. pa[y] = x;
  26. }
  27. else{
  28. pa[x] = y;
  29. if(rank[x] == rank[y]){
  30. rank[y]++;
  31. }
  32. }
  33. }
  34.  
  35. int main(void){
  36. int n,m,kase=,count;
  37. while(scanf("%d%d",&n,&m) == && n!= && m!=){
  38. int i;
  39. for(i=;i<=n;i++){
  40. make_set(i);
  41. }
  42. for(i=;i<m;i++){
  43. int a,b;
  44. scanf("%d%d",&a,&b);
  45. union_set(a,b);
  46. }
  47. count = ;
  48. for(i=;i<=n;i++){
  49. if(i == pa[i]){
  50. count++;
  51. }
  52. }
  53. printf("Case %d: %d\n",++kase,count);
  54. }
  55. return ;
  56. }

POJ2524-宗教问题-并查集-ACM的更多相关文章

  1. POJ2524 Ubiquitous Religions(并查集)

    题目链接. 分析: 给定 n 个点和 m 条无项边,求连通分量的数量.用并查集很简单. #include <iostream> #include <cstdio> #inclu ...

  2. poj-2524 ubiquitous religions(并查集)

    Time limit5000 ms Memory limit65536 kB There are so many different religions in the world today that ...

  3. poj2524(简单并查集)

    #include <iostream>#include <stdio.h>#include <string.h>#include <stdlib.h>u ...

  4. poj2524 Ubiquitous Religions(并查集)

    题目链接 http://poj.org/problem?id=2524 题意 有n个学生,编号1~n,每个学生最多有1个宗教信仰,输入m组数据,每组数据包含a.b,表示同学a和同学b有相同的信仰,求在 ...

  5. HDU 5458 Stability(双连通分量+LCA+并查集+树状数组)(2015 ACM/ICPC Asia Regional Shenyang Online)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5458 Problem Description Given an undirected connecte ...

  6. poj2524(并查集水题)

    题目链接:http://poj.org/problem?id=2524 题目大意:学校共有n个同学,告诉你m对同学信仰同一宗教,问这个学校学生信仰宗教的数目最多为多少. 例: Sample Input ...

  7. TOJ3955: NKU ACM足球赛(并查集+map+细节题)

    时间限制(普通/Java):5000MS/15000MS     内存限制:65536KByte 描述 NKU ACM最近要举行足球赛,作为此次赛事的负责人,Lee要对报名人员进行分队.分队要遵循如下 ...

  8. ACM数据结构-并查集

    ACM数据结构-并查集   并查集,在一些有N个元素的集合应用问题中,我们通常是在开始时让每个元素构成一个单元素的集合,然后按一定顺序将属于同一组的元素所在的集合合并,其间要反复查找一个元素在哪个集合 ...

  9. 带权并查集:CF-2015 ACM Arabella Collegiate Programming Contest(F题)

    F. Palindrome Problem Description A string is palindrome if it can be read the same way in either di ...

随机推荐

  1. Telephone directory - SGU 127(水)

    题目大意:有一个电话簿,每页最多纪录K行电话,现在有N个电话要记录在电话薄上,要求同页的电话号码的首位要相同,电话簿的前两页是纪录的别的东西,问最少需要多少页电话簿. 分析:直接求首位数字有多少个即可 ...

  2. 将solr3.5整合到Tomcat6.x中

    最近在学习Lucene,然后进入到solr中,没想到一开始,solr就给我来了这么困难的开头,希望万事开头难,以后可以顺利一点吧.记录下将solr3.5整合到Tomcat6.x中的过程,以及遇到的一个 ...

  3. 使用Spring-data-redis操作Redis的Sentinel

    介绍 Spring-Data-Redis项目(简称SDR) 是对Redis的Key-Value数据存储操作提供了更高层次的抽象,提供了一个对几种主要的redis的Java客户端(例 如:jedis,j ...

  4. Linq to sql语法

    LINQ to SQL语句(1)之Where Where操作 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子 ...

  5. 【设计模式 - 12】之代理模式(Proxy)

    1      模式简介 1.1    定义 为其他对象提供一种代理以控制对这个对象的访问.代理对象起到中介作用,可以去掉功能服务或增加额外服务. 1.2    常见的代理模式 1)        远程 ...

  6. WCF服务发布到IIS时候,只能根据hostname访问,不能根据IP地址访问的解决办法

    本文转载:http://www.cnblogs.com/deerbox/archive/2013/05/13/3076248.html 环境: VS2010 sp1,.net framework 4. ...

  7. 刚才建立一个 swift 中文讨论社区,欢迎大家參与讨论

    http://www.chinaswift.me 主要目的是收集 swift学习资源

  8. iOS开发中关于UIImage的知识点总结

    UIImage是iOS中层级比较高的一个用来加载和绘制图像的一个类,更底层的类还有 CGImage,以及iOS5.0以后新增加的CIImage.今天我们主要聊一聊UIImage的三个属性: image ...

  9. [转] Mac 下 PostgreSQL 的安装与使用

    在 mac 下,可以利用 homebrew 直接安装 PostgreSQL: 1 brew install postgresql -v 稍等片刻,PostgreSQL 就安装完成.接下来就是初始数据库 ...

  10. YouTube CEO关于工作和生活平衡的完美回答

    原文地址:http://www.businessinsider.com/youtubes-ceo-response-to-work-life-balance-2015-7 译文: 在2015年Aspe ...