(并查集)Is It A Tree? --POJ--1308
链接:
http://poj.org/problem?id=1308
http://acm.hust.edu.cn/vjudge/contest/view.action?cid=82830#problem/N
代码:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<iostream>
#include<algorithm>
using namespace std; #define N 100005 int f[N];
bool r[N]; void IN()
{
memset(r, false, sizeof(r));
for(int i=; i<N; i++)
f[i]=i;
} int Find(int x)
{
while(x!=f[x])
{
x=f[x];
}
return f[x];
} int main()
{
int a, b, fa, fb, i,sum=, flag1=, flag2=, k=, MIN, MAX; IN();
while(scanf("%d%d", &a, &b), a>= || b>=)
{
if(a== && b==)
{
if(sum==)
{
printf("Case %d is a tree.\n", k++);
continue;
}
int z = Find(MIN);
for(i=MIN; i<=MAX; i++)
{
if(r[i])
{
if(z!=Find(i)) // 根(父)节点不同
{
flag2=;
break;
}
}
} if(flag1 || flag2)
printf("Case %d is not a tree.\n", k++);
else
printf("Case %d is a tree.\n", k++);
IN();
sum=, flag1=, flag2=;
}
else
{
sum++;
r[a] = , r[b] = ;
MIN = min(MIN, min(a ,b)), MAX = (MAX, max(a, b)); fa = Find(a), fb = Find(b);
if(fa != fb)
f[fa] = fb;
else //构成了环
flag1=;
} }
return ;
}
(并查集)Is It A Tree? --POJ--1308的更多相关文章
- Is It A Tree? POJ - 1308(并查集判树)
Problem Description A tree is a well-known data structure that is either empty (null, void, nothing) ...
- 并查集+关系的传递(poj 1182)
题目:食物链 题意:给定一些关系.判断关系的正确性,后给出的关系服从之前的关系: 思路:难点不在并查集,在于关系的判断,尤其是子节点与根节点的关系的判断: 这个关系看似没给出,但是给出子节点与父节点的 ...
- Is It A Tree? POJ - 1308
题意: 题目给你一组单向边,当遇到输入0 0就证明这是一组边,当遇到-1 -1就要停止程序.让你判断这是不是一棵树 题解: 题目很简单,但是程序要考虑的很多 1.因为是一颗树,所以肯定不能出现环,这个 ...
- 类似区间计数的种类并查集两题--HDU 3038 & POJ 1733
1.POJ 1733 Parity game Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 5744 Accepted: ...
- (并查集 建立关系)Parity game -- POJ -1733
链接: http://poj.org/problem?id=1733 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=82830#probl ...
- (并查集 贪心思想)Supermarket -- POJ --1456
链接: http://poj.org/problem?id=1456 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=82830#probl ...
- POJ 2492 并查集应用的扩展
A Bug's Life Time Limit: 10000MS Memory Limit: 65536K Total Submissions: 28651 Accepted: 9331 Descri ...
- 【转】并查集&MST题集
转自:http://blog.csdn.net/shahdza/article/details/7779230 [HDU]1213 How Many Tables 基础并查集★1272 小希的迷宫 基 ...
- [kuangbin带你飞]专题五 并查集
并查集的介绍可以看下https://www.cnblogs.com/jkzr/p/10290488.html A - Wireless Network POJ - 2236 An earthquake ...
- ACM/ICPC 之 并查集-食物链(POJ1182)
并查集的经典题型,POJ上题目还是中文= =,一般看到中文题都会感觉不太简单,这道题的数学归纳用得比较多,可以简化代码,挺有意思的. 同类型的题目还有POJ1703,比这个要简单,想了解并查集基本介绍 ...
随机推荐
- vim nginx配置文件时具备语法高亮功能
1.下载nginx.vim 下载页面:http://www.vim.org/scripts/script.php?script_id=1886 wget http://www.vim.org/scri ...
- Ubuntu技巧之清理系统中无用的软件包
如果你频繁的在你的系统中安装/卸载,那么不时的清理一下你的系统是十分必要的. 在Ubuntu终端中执行如下命令: sudo apt-get autoremove 屏幕输出是这个样子的: Reading ...
- 迷你MVVM框架 avalonjs 1.4发布
主要带来以下三大改进: 全新的兼容AMD规范requirejs API的加载器 使用gulp进行构建 兼容性更好的触屏模块 最近还修改了avalon.modern bind方法的BUG,自定义过滤器的 ...
- java script btoa与atob的
javascript原生的api本来就支持,Base64,但是由于之前的javascript局限性,导致Base64基本中看不中用.当前html5标准正式化之际,Base64将有较大的转型空间,对于H ...
- dom node 查找父级parentNode
var o = document.querySelectorAll("a[href='baidu.com']"); var p = o[o.length-1];console.lo ...
- Java RSA 生成公钥 私钥
目前为止,RSA是应用最多的公钥加密算法,能够抵抗已知的绝大多数密码攻击,已被ISO推荐为公钥数据加密标准. RSA算法中,每个通信主体都有两个钥匙,一个公钥(Public Key)用来对数据进行加密 ...
- 在Windows下远程连接CentOS6
远程连接linux服务器的方式:以显示的类型来分类,可以分为字符界面和图形界面两种.字符界面软件有SecureCRT.PUTTY等:图形界面有Xmanager.Xdmcp和VNC软件等.
- mysql开通tcp远程连接
1.登陆mysql: mysql -u root mysql 2.运行下面命令 UPDATE `mysql`.`user` SET `Host` = '%' WHERE `user`.`Host` = ...
- hdoj1043 Eight(逆向BFS+打表+康拓展开)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1043 思路: 由于自己对康拓展开用的太少,看到这个题没想到康拓展开,最开始打算直接转换为数字,但太占内 ...
- 常用修图工具的一些使用技巧及问题解决方法——ai
一.ai如何修改画布大小 一. ai如何修改画布大小: 1. 左上角菜单中的文件——文档设置(也可以直接点菜单栏下边的控制栏中的文档设置) 2. 文档设置界面中,点击右上角“编辑画板“ 3. 此时面板 ...