poj 2524 Ubiquitous Religions

简介: 点击打开链接poj 2524 思路:简单的并查集 分析:输入的时候把相同集合的元素合并在一起,那么我们用一个vis数组来标记集合根节点是否出现过。

点击打开链接poj 2524


思路:简单的并查集

分析:输入的时候把相同集合的元素合并在一起,那么我们用一个vis数组来标记集合根节点是否出现过。比如某个几个的根节点为5,那么就把vis[5] = 1。这样最后我们只需要

枚举一变所有的点,把最后有个根节点求出来就是最大的集合数量


代码:

#include<set>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;

const int MAXN = 50010;

int father[MAXN];

void init(int n){
    for(int i = 0 ; i <= n ; i++)
        father[i] = i;
}

int find(int x){
    if(father[x] != x)
        father[x] = find(father[x]);
    return father[x];
}

void solve(int x , int y){
    int fx = find(x);
    int fy = find(y);
    if(fx != fy)
       father[fx] = fy;
}

int main(){
    int cas = 1;
    int n , m;
    int x , y;
    while(scanf("%d%d" , &n , &m) && n+m){
        init(n);
        while(m--){
            scanf("%d%d" , &x , &y); 
            solve(x , y);
        }
        set<int>s;
        for(int i = 1 ; i <= n ; i++)
            s.insert(find(i));
        printf("Case %d: %d\n" , cas++ , s.size());
    }
    return 0;
}



目录
相关文章
|
Kubernetes 应用服务中间件 Docker
云效搭建流水线时,如果你使用的是Docker,那么你可以选择"Docker镜像"
云效搭建流水线时,如果你使用的是Docker,那么你可以选择"Docker镜像"
375 1
|
设计模式 前端开发 测试技术
Flutter 项目架构技术指南
探讨Flutter项目代码组织架构的关键方面和建议。了解设计原则SOLID、Clean Architecture,以及架构模式MVC、MVP、MVVM,如何有机结合使用,打造优秀的应用架构。
329 1
Flutter 项目架构技术指南
|
OceanBase
解决OceanBase安装问题
解决OceanBase安装问题
428 0
|
算法 安全 Shell
SSH:加密安全访问网络的革命性协议
SSH:加密安全访问网络的革命性协议
378 9
|
11月前
|
搜索推荐 Android开发 开发者
探索安卓系统的最新特性与发展趋势
本文深入分析了Android 13的新功能和改进,以及这些更新对用户体验和开发者社区的影响。文章还预测了未来Android系统的发展方向,为技术爱好者提供了宝贵的信息。
|
Oracle Java 关系型数据库
Mac电脑上安装和配置Flutter开发环境
Mac电脑上安装和配置Flutter开发环境
520 60
|
数据管理 程序员 数据处理
利用Python自动化办公:从基础到实践####
本文深入探讨了如何运用Python脚本实现办公自动化,通过具体案例展示了从数据处理、文件管理到邮件发送等常见办公任务的自动化流程。旨在为非程序员提供一份简明扼要的实践指南,帮助他们理解并应用Python在提高工作效率方面的潜力。 ####
|
机器学习/深度学习 SQL 数据采集
基于tensorflow、CNN网络识别花卉的种类(图像识别)
基于tensorflow、CNN网络识别花卉的种类(图像识别)
390 2
|
人工智能 算法 决策智能
面向软件工程的AI智能体最新进展,复旦、南洋理工、UIUC联合发布全面综述
【10月更文挑战第9天】近年来,基于大型语言模型(LLM)的智能体在软件工程领域展现出显著成效。复旦大学、南洋理工大学和伊利诺伊大学厄巴纳-香槟分校的研究人员联合发布综述,分析了106篇论文,探讨了这些智能体在需求工程、代码生成、静态代码检查、测试、调试及端到端软件开发中的应用。尽管表现出色,但这些智能体仍面临复杂性、性能瓶颈和人机协作等挑战。
406 1
|
人工智能 搜索推荐
人工智能浪潮下的伦理困境:我们如何应对?
在人工智能技术飞速发展的今天,它不仅改变了我们的生活方式,更引发了深刻的社会伦理问题。本文旨在探讨AI技术带来的伦理挑战,包括隐私泄露、就业置换、决策透明度和机器自主性等议题,并提出相应的对策建议,以期为AI技术的健康发展提供指导。