poj 1308(并查集)

POJ.rar_poj java_poj1048 POJ1048,加强版的约瑟夫问题 难度中等 立即下载
package com.liang.poj;

import java.util.Scanner;

public class Test1308_Union_Fand_set {
	static int N = 100001;
	static int[] node = new int[N];
	static int[] rank = new int[N];
	static int count = 1;
	static boolean tag = true;

	public static void main(String[] args) throws Exception {
		Scanner scan = new Scanner(System.in);
		makeSet();
		while (scan.hasNext()) {

			int a = scan.nextInt();
			int b = scan.nextInt();

			if (a == -1 && b == -1) {
				break;
			}

			if (a == 0 && b == 0) {
				if (tag) {
					if (!judge()) {
						System.out.println("Case " + count++ + " is not a tree.");
					} else {
						System.out.println("Case " + count++ + " is a tree.");
					}
				} else {
					System.out.println("Case " + count++ + " is not a tree.");
				}
				makeSet();
			} else {
				merge(a, b);
			}

		}
	}

	public static void makeSet() { // 初始化单元素集合
		tag = true;
		for (int i = 1; i < N; i++) {
			node[i] = 0;
			rank[i] = 0;
		}
	}

	public static int find(int x) { // 带路径压缩的查找
		if (node[x] == 0) {
			node[x] = x;
			return x;
		} else {
			if (x != node[x]) {
				x = find(node[x]);
			}
			return x;
		}
	}

	public static void merge(int a, int b) { // 合并集合a,集合b
		int fa = find(a);
		int fb = find(b);
		if (fa == fb) {
			if (fa == 0 && fb == 0) {

				if (rank[fa] >= rank[fb]) {
					node[fb] = fa;
					rank[fa]++;
				} else {
					node[fa] = fb;
					rank[fb]++;
				}
			} else {
				tag = false;
			}
		} else {
			if (rank[fa] >= rank[fb]) {
				node[fb] = fa;
				rank[fa]++;
			} else {
				node[fa] = fb;
				rank[fb]++;
			}
		}
	}

	public static boolean judge() {
		int sum = 0;
		for (int i = 1; i < node.length; i++) {
			if (node[i] == 0) {
				continue;
			} else {
				if (i == node[i]) {
					sum++;
				}
				if (sum >= 2) {
					return false;
				}
			}
		}
		return true;
	}

}


 

十二、基于FPGA实现slave SelectMAP配置逻辑 slave SelectMAP配置 阅读详情

相关推荐

SiamRPN++实战:如何用深度孪生网络提升无人机目标跟踪精度(附代码)

本文深入探讨了如何利用SiamRPN++深度孪生网络构建适用于无人机平台的高精度、轻量化单目标跟踪系统。文章详细解析了其兼顾精度与效率的核心原理,并提供了从PyTorch模型轻量化、骨干网络替换到TensorRT部署及应对遮挡、光照突变等实际挑战的完整工程实践指南与代码示例。

weixin_29047545的博客 371

数据结构 并查集 Poj 1308

#include #include #include int parent[100005]; int vis[100005]; int n,m;//用来记录 点的个数 为了判断是否有环 n为点 m为边 int flag;//是否输入的两个数字已经是 树上的点 int find(int x) { if(x!=parent[x]) { return parent[x]=find

DouBoomFly的博客 477

保姆级教程:手把手教你用Jacquard V2数据集训练机器人抓取模型(附完整代码)

本文提供了一份详细的保姆级教程,手把手教你使用Jacquard V2数据集训练机器人抓取模型。从环境配置、数据准备到模型架构设计、训练优化和实际部署,全程解析并附完整代码,帮助开发者快速掌握视觉抓取技术。

weixin_29031057的博客 315

POJ 1308 Is It A Tree?

大意:给出父子关系 看看能不能组成一棵树 #include #include #include #include using namespace std; int rank[100005]; int set[100005]; int v[100005]; void init() { for(int i=1;i<100000;i++) { set[

Jinx Jinx again 825

【unity】【WebRTC】从0开始创建一个Unity远程媒体流app-构建可同步场景

本文介绍了如何利用Unity和WebRTC技术实现远程画面传输。通过配置Render Streaming组件、设置信令管理器和视频流发送器,构建了一个可同步的Unity场景。文中详细说明了从场景搭建到浏览器端测试的完整流程,并提供了常见问题排查方法。该方案适用于远程调试、云游戏、VR共享等场景,具有低延迟、高兼容性等特点。文章还包含项目源码下载链接,方便读者实践操作。最终实现了Unity端到浏览器端的实时画面传输,为后续实现双向互动奠定了基础。

每日出拳老爷子的博客 1843

Python 爬虫实战:爬取知乎问答与评论数据并分析

摘要:本文以Python为核心工具,系统讲解知乎问答与评论数据爬取的技术方案。通过分析知乎API接口结构,详细阐述Requests库结合正则表达式的数据获取方法,涵盖请求头构造、鉴权参数处理等关键技术。文章对比了HTML解析、API调用和Selenium模拟三种爬取方案的优劣,提供完整的代码实现,包括问题信息获取、回答列表爬取和评论数据提取。同时介绍了数据存储(JSON/Excel)和基础文本分析(词云生成)方法,并给出合规使用建议和技术优化方向,为开发者提供了一套可落地的知乎数据爬取与分析解决方案。

2503_91057718的博客 1822

POJ---1308(并查集,判连通,无环)

题意:给定一组数据(u,v)代表u指向v。判断这组数据是否形成一棵树。 题解:利用树的特性:连通且无环。或者利用树的性质:无环(或者联通)且v=e+1;无环可以用并查集去判定。连通可以根据并查集确定有几个根节点来判断。边数V是加的边数,点E可以用set得出。  ①:无环。E=V+1。#include&lt;iostream&gt; #include&lt;cstdio&gt; #include&l...

sgh666666的博客 306

4. SAP ABAP OData 服务 Data Provider Class 的 GET_ENTITYSET 方法实现指南

首先第19行CREATEDATA创建er_entityset实例,指定其类型为zcl_zbook_manage_mpc=>tt_book,接着把这个引用映射到刚刚第五行定义的FIELD-SYMBOLS变量上去,这样的话,接下来我们对FIELD-SYMBOLS进行的操作,就会自动反应回引用变量er_entityset.因为我们可能在这个方法里,返回多条图书信息,所以需要用内表类型,而非单条记录的ts_book.ts_book代表一本图书的数据结构。......

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 2963

poj1308小希的迷宫

http://poj.org/problem?id=1308 1 #include<stdio.h> 2 #include<string.h> 3 #define N 100001 4 int bin[N],flag; 5 int find(int x) 6 { 7 //不压缩路径 8 /*int r=x; ...

130

SpringCloud Alibaba - Seata 实现高可用和异地容灾

这里不仅仅要实现高可用,还需要实现异地容灾. 异地容灾就是说,如果你整了好几个节点部署起来,全部放到一个机房里面,那么如果这个机房出了故障,就意味着整个集群就完了,所以对于一个大型的集群来讲,都会把这些服务异地部署.问题2:如果我们要实现异地容灾,也就说某一个机房挂了,需要快速的切换到另一个可用的机房,但是这个配置在配置文件中写死了,如果要改配置文件,还需要重启服务器,这是我们不希望看到的,怎么办?进入 seata/bin 目录,运行 seata-server.bat 文件,默认端口为 8091。

CYK_byte的博客 977

ABAP Cloud 里的高性能日志:CL_BALI_LOG、XCO_CP_BAL 与 AML 的性能对比与选型指南

ABAP日志框架性能对比与选型建议 本文对比了ABAP Cloud中三种主流日志框架的性能表现与适用场景: 标准BALI:适合明确需要保存日志的场景,保存路径短,性能较好 XCO_CP_BAL:API更现代但性能较低,适合需要即时可见性的场景 AML:开源框架,擅长消息缓冲,适合批量处理时暂存消息 测试结果表明: 纯记录不落库时AML最快 需要保存时BALI性能最优 second connection不提升性能但能确保日志留存 选型建议: 高频批处理优先AML+BALI组合 故障诊断考虑XCO的即时可见性

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 215

Poj1308 并查集

[code="java"]package middle; import java.io.BufferedInputStream; import java.util.Scanner; /** * poj1308 * 判断是否是一棵只有一个根,并且到每个结点的路径唯一的树 * 多种解法,这里用并查集 * 1.空树也是一棵树 * 2.不是同一棵树就合并,输入的边的两...

nc200830740306的专栏 342

汽车UDS诊断之诊断会话控制服务(0x10)深度剖析

DiagnosticSessionControl就是诊断会话控制。 请求消息定义 A_Data类型 参数名称 Cvt 字节值 助记符 #1 诊断会话控制请求SID M 0x10 DSC #2 子功能=[诊断会话类型] M 0x00-0xFF LEV_DS_ ...

心骗小白话的博客 7421

并查集之POJ1308

Description A tree is a well-known data structure that is either empty (null, void, nothing) or is a set of one or more nodes connected by directed edges between nodes satisfying the following proper

buaa_shang的专栏 1611

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

poj1308(并查集)

题目链接:http://poj.org/problem;jsessionid=436A34AE4BE856FB2DF9B264DCA9AA4E?id=1308 题意:给定一些边让你判断是否构成数。 思路:这道题细节很多,wa了好久。利用并查集将一棵树的节点并在一块,如果当前的边的两个端点祖先相同,则不能够成树(有环),利用num数组记录每个结点的入度,入度不能大于1。输入为 0 0表示空树,满...

weixin_33872660的博客 104

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

POJ 1308(简单并查集)

此博客详细介绍了并查集的基本概念:并查集的初级应用及进阶    POJ1308:题意是输入每两个的数第二个的父亲是第一个数,判断输入结束之后是否是一颗树的结构。 #include int father[10020]; int Find_it(int x) { int temp = x,t; while(father[temp] != temp) temp =

Since_natural_ran 470

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

poj1308 (并查集)Is It A Tree?

题目链接:poj1308 题目的要求是让判断给出的点能否连接成一颗树,一棵树的话就只有一个树根,同时一个子节点不能同时拥有两个父亲,解法是用并查集,用father数组来记录每个节点的父节点,v数组来记录是否输入了节点。 #include #include #include #include #include #include using namespace std; int f

no pains,no gains 1052

POJ 1308 Is it a tree(并查集)

POJ1308 并查集的学习 #include <iostream>#include <memory.h>using namespace std;int father[5000];bool has_point[5000];int case_number;void Ini_Set(int y){ father[y]=y; has_point[y]=tr...

weixin_30708329的博客 92

poj 1308 Is It A Tree? 简单并查集

闲的没事,做一道POJ,已经AC胡哥题册142个题了,好期待200题的大奖啊。扯远了。。 这个题太简单了,并查集的简单应用,输入有挺多坑的。 1 : 空树是一棵树。 2: :自己不能指向自己。 3 : 不能有重复边。 4 : 两个树合并的时候必须至少有一个点是祖先。 5 : 即使输入结束前已经判断完毕,也得输入结束。 //===============================

241

POJ——1308 HDU——Is It A Tree?(并查集模板题)

原题链接:http://poj.org/problem?id=1308 测试样例: Sample Input 6 8 5 3 5 2 6 4 5 6 0 0 8 1 7 3 6 2 8 9 7 5 7 4 7 8 7 6 0 0 3 8 6 8 6 4 5 3 5 6 5 2 0 0 -1 -1 Sample Output Case 1 is a tree. Case 2 is a tree. Case 3 is not a tree. 题意:给你一些点,判断是不

pursuit的博客 553

poj 1308 Is It A Tree?(并查集)

题目: poj 1308 Is It A Tree?(并查集)

633

POJ 1308 Is It A Tree?【判断树 并查集】

POJ 1308 Is It A Tree? 题目链接:vjudge传送门 题目大意: 给定若干条有向边,判断所给的所有边是否能组成一颗树(包含空树) 具体思路: 离散数学图论知识,只有一个结点入度为0,其它结点入度均为1的图是树,保存每个点的入度,最后判断即可 也可按树的定义来,用并查集来维护 新加入的边,被指向的结点必须是并查集中的祖先结点(排除入度大于1和环的情况),加入完后把两点合并 处理...

指弹键盘哼民谣 498

[POJ 1308]Is It A Tree?[并查集][判断有向树]

题目链接:[POJ 1308]Is It A Tree?[并查集] 题意分析: 判断给出的有向图是不是一颗树。 解题思路: 嘛,首先得看看题目是怎么给树定义的。 一、树是n(n>=0)个结点的有限集 二、树没有环 三、是树,不是森林 四、有且仅有一个结点的入度为0 五、除树根外,结点入度为1 对于条件二,当某条边的左右两端点都属于一个集合时,就存在环了。 对于条件三,当某个结

闲停 1083

POJ 1308 Is It A Tree? (并查集)

链接:http://poj.org/problem?id=1308 思路: 1. 对每组输入的根节点标记表示这些节点出现过并进行并操作,并操作是两个节点不能有相同的根节点否则将构成环,假设b节点要接到a节点上,则要保证b节点是一个根节点;否则若进行并操作b将会有两个父节点,若无以上情况,则可以合并两棵树; 2. 每组数据输入结束时要计算整个图中的根节点的数目,若根节点的总数不为1,则构成的图

Epic丶玖遇 1176
上一篇: 数据结构之并查集
下一篇: poj 2524(并查集)
三易的博客
博客等级 码龄15年 42粉丝 89原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值