openjudge 宗教信仰
1526:宗教信仰
- 查看
- 提交
- 统计
- 提问
- 总时间限制:
- 5000ms
- 内存限制:
- 65536kB
- 描述
-
世界上有许多宗教,你感兴趣的是你学校里的同学信仰多少种宗教。你的学校有n名学生(0 < n <= 50000),你不太可能询问每个人的宗教信仰,因为他们不太愿意透露。但是当你同时找到2名学生,他们却愿意告诉你他们是否信仰同一宗教,你可以通过很多这样的询问估算学校里的宗教数目的上限。你可以认为每名学生只会信仰最多一种宗教。
- 输入
-
输入包括多组数据。
每组数据的第一行包括n和m,0 <= m <= n(n-1)/2,其后m行每行包括两个数字i和j,表示学生i和学生j信仰同一宗教,学生被标号为1至n。输入以一行 n = m = 0 作为结束。 - 输出
- 对于每组数据,先输出它的编号(从1开始),接着输出学生信仰的不同宗教的数目上限。
- 样例输入
-
10 9 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 10 10 4 2 3 4 5 4 8 5 8 0 0
- 样例输出
-
Case 1: 1 Case 2: 7
-
#include<iostream> #include<cstdio> #include<cstring> using namespace std; int f[50003],n,m,ans,i,j,k,num[50003]; int find(int x) { if (f[x]==x) return x; f[x]=find(f[x]); return f[x]; } int main() { scanf("%d%d",&n,&m); int l=0; while (n!=0&&m!=0) { l++; for (i=1;i<=n;i++) f[i]=i; for (i=1;i<=m;i++) { int x,y; scanf("%d%d",&x,&y); int r1=find(x); int r2=find(y); f[r2]=r1; } ans=0; memset(num,0,sizeof(num)); for(i=1;i<=n;i++) int r1=find(i); for (i=1;i<=n;i++) if (num[f[i]]==0) { ans++; num[f[i]]++; } printf("Case %d: %d\n",l,ans); scanf("%d%d",&n,&m); } }
openjudge 宗教信仰相关推荐
- NOI 4.3 图论 1526:宗教信仰
题目来源:http://noi.openjudge.cn/ch0403/1526/ 1526:宗教信仰 总时间限制: 5000ms 内存限制: 65536kB 描述 世界上有许多宗教,你感兴趣的 ...
- 数据结构实验 6.宗教信仰
题目 [问题描述] 世界上有许多宗教,你感兴趣的是你学校里的同学信仰多少种宗教. 你的学校有n名学生(0 < n <= 50000),你不太可能询问每个人的宗教信仰,因为他们不太愿意透露. ...
- 宗教信仰和推荐系统解决同一问题
人工智能 ,哲学, 舆论 (Artificial Intelligence, Philosophy, Opinion) On the surface, religions and recommende ...
- 《红楼梦》中的宗教信仰
读<红楼梦>是一件轻松惬意的事情.虽然看到第N回还是没记住其中的人物关系,需要找人物关系图才能理清楚他们之间的亲戚关系,虽然其中诸如奶奶.二奶奶.太太.姨娘等称谓常让人有些迷糊,但这丝毫不 ...
- 人工智能拥有宗教信仰?变害为利还是邪恶帮凶
马斯克又发出警告称,人工智能对人类的危害将可能与核武器相提并论.不过,从另一角度来看,人工智能是否也有希望接受一种宗教形式,通过忠诚的信仰让人工智能变害为利,尽量多做对人类有益的事,减轻对人类的危害? ...
- POJ 2524 宗教信仰 并查集 基础模板
世界上有许多不同的宗教,现在有一个你感兴趣的问题:找出多少不同的宗教,在你的大学中的大学生信仰了多少种不同的宗教.你知道在你的大学有n个学生(0<n<= 50000).若直接问每一个学生的 ...
- 并查集_宗教信仰(并查集)
题目描述 世界上有许多不同的宗教,现在有一个你感兴趣的问题:找出多少不同的宗教,在你的大学中的大学生信仰了多少种不同的宗教.你知道在你的大学有n个学生(0<n<= 50000).若直接问每 ...
- 1526:宗教信仰——简单并查集
描述 世界上有许多宗教,你感兴趣的是你学校里的同学信仰多少种宗教. 你的学校有n名学生(0 < n <= 50000),你不太可能询问每个人的宗教信仰,因为他们不太愿意透露.但是当你同时找 ...
- 并查集---宗教信仰
并查集-宗教信仰 题目: There are so many different religions in the world today that it is difficult to keep t ...
最新文章
- Android中设置RecyclerView的每一个item的单项点击事件
- Shell(12)——awk(2)
- C语言第九次博客作业--指针
- linux下的c语言控制灯闪烁,C语言实现LED灯闪烁控制
- 网易有道词典2019年度十大热词:Vlog、PUA等上榜
- bzoj 1645: [Usaco2007 Open]City Horizon 城市地平线(线段树扫描线)
- 资产管理界的风控大师-贝莱德BlackRock集团
- Matlab图像分割
- 实验3matlab的符号运算,实验MATLAB符号运算
- 无法访问。您可能没有权限使用网络资源。请与这台服务器的管理员联系查明你是否有访问权限。
- 物联网通信消息队列客户端-MQTT简介
- 壁纸控福音:私藏的100PC张壁纸一次打包分享
- php 微信发红包 证书错误,微信支付,使用证书时出现58错误 - 微信公众平台
- LED,LCD,CRT,TFT,TFD,STN显示屏说明
- 钒酸钠的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
- 计算机翻译图片,扫描图片翻译在线翻译方法(纯干货~)
- 关于torch.bmm()函数计算过程
- win10系统 - U盘启动盘制作教程
- SouthernBiotech 艾美捷Fluoromount-G功能参数
- 《银翼杀手》画面布局赏析
热门文章
- java解密手机QQ聊天记录
- Jeeplus使用备忘
- 地磅称重微调的3种方法,解决称重不准的问题
- 现代控制理论与经典控制理论
- java中判断字符串是否为汉字或其他字符
- 使用Oracle自带的SQL PLUS工具管理Oracle数据库
- 我读过的最好的epoll讲解
- nodejs操作sqlserver数据_实例分析nodejs基于mssql模块连接sqlserver数据库的简单封装操作...
- 鸿蒙2.0安卓,华为鸿蒙2.0可以替代安卓吗,华为鸿蒙2.0优势在哪
- MATLAB软件基础学习篇——002