(╭ ̄3 ̄)╭ 小希的迷宫II
(╭ ̄3 ̄)╭ 小希的迷宫II

对于每一幅地图,都需要满足上述所要求的树形结构,这样的设计图才算合格。当只输入0 0,判断为树
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
Case 1 is a tree.
Case 2 is a tree.
Case 3 is not a tree. 解法一:(只是在小希的迷宫上添加了入度条件即可)
#include <iostream>
#include <stdio.h>
using namespace std;
#define Max 100100
int ID[Max];
int InD[Max];
int Out_Num;
int Pio[Max];
int SIGN;
int P_Num;
void Cread(int N)
{
for(int i=;i<=N;i++){ID[i]=i;Pio[i]=;InD[i]=;}
}
int Find(int x)
{
int TMD=x,TMP;
while(TMD!=ID[TMD])TMD=ID[TMD];
while(x!=TMD)
{
TMP=ID[x];
ID[x]=TMD;
x=TMP;
}
return x;
}
void Update(int a,int b)
{
if(Pio[a]){P_Num++;Pio[a]=;}
if(Pio[b]){P_Num++;Pio[b]=;}
if(InD[b]){Out_Num++;InD[b]=;}
int A=Find(a);
int B=Find(b);
if(A!=B)
{
ID[A]=B;
SIGN++;
}
else SIGN=Max;
}
int main()
{
int T,N,M,i,j,a,b,t=;
Cread(Max);SIGN=;P_Num=;Out_Num=;
while(scanf("%d%d",&a,&b)!=EOF)
{
if(a<&&b<)break;
if(a==&&b==)
{
// printf("%d %d %d\n",SIGN,Out_Num,P_Num);
if((SIGN==P_Num-||P_Num==)&&Out_Num==SIGN)
printf("Case %d is a tree.\n",t++);
else
printf("Case %d is not a tree.\n",t++);
Cread(Max);SIGN=;P_Num=;Out_Num=;
continue;
}
Update(a,b);
}
return ;
}
正解:(只需要根据树的定义,判断入度即可。。。)
#include<stdio.h>
#include<algorithm>
#include<string.h>
using namespace std;
int d[];
bool bo[];
int bianshu=;
void init(){
memset(d,,sizeof(d));
memset(bo,,sizeof(bo));
bianshu=;
}
int main(){
int x,y,cas=;
while(~scanf("%d%d",&x,&y))
{
if(x==-&&y==-){
break;
}
if(x==&&y==){
int bobo=;
int i;
for(i=;i<=;i++){
if(bo[i]&&d[i]==){
if(bobo==) bobo=;
else break;
}else
if(bo[i]&&d[i]!=){
break;
}
}
if(i<=) printf("Case %d is not a tree.\n",cas++);
else printf("Case %d is a tree.\n",cas++);
init();
continue;
}
d[y]++;
bo[x]=true;
bo[y]=true;
bianshu++;
}
return ;
}
(╭ ̄3 ̄)╭ 小希的迷宫II的更多相关文章
- ( ̄y▽ ̄)~ 智能手机II
( ̄y▽ ̄)~ 智能手机II TimeLimit: 3000/1000 MS (Java/Others) MenoryLimit: 32768/32768 K (Java/Others) 64-bi ...
- HDU 1272 小希的迷宫 并查集
小希的迷宫 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submi ...
- hdu 1272 小希的迷宫
小希的迷宫 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submi ...
- 小希的迷宫(MST单棵树判断法则)
小希的迷宫 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submi ...
- hdu 1272 小希的迷宫 解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1272 第二条并查集,和畅通工程的解法类似.判断小希的迷宫不符合条件,即有回路.我的做法是,在合并两个集 ...
- hdu 1257 小希的迷宫 并查集
小希的迷宫 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=1272 D ...
- HDU 1272 小希的迷宫 (并查集)
小希的迷宫 题目链接: http://acm.hust.edu.cn/vjudge/contest/123393#problem/L Description 我们的小伙伴Bingo身为大二学长,他乐于 ...
- 小希的迷宫(HDU 1272 并查集判断生成树)
小希的迷宫 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submi ...
- 小希的迷宫--hdu1272(并查集)
小希的迷宫 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submi ...
随机推荐
- openstack私有云布署实践【17 配置文件部份说明】
Nova部份 cpu_allocation_ratio = 4.0 物理 CPU 超售比例,默认是 16 倍,超线程也算作一个物理 CPU,需要根据具体负载和物理 CPU 能力进行综合判断后确定具体的 ...
- 【Android】策略模式封装百度地图路线规划模块
百度地图的Demo里有个路线规划的功能,但是,这个功能和Activity耦合性太高,所以需要单独抽离出路径规划功能,进行"解耦". 注:由于项目原因,本文只针对驾车路线规划进行封装 ...
- webAPI---发布(IIS)--发布遇到问题(500.19,500.21,404.8,404.3)
WebAPI的内容部分直接转自官方文档,英语水平有限,不做翻译, 发布网站在本文的后半部分 HTTP is not just for serving up web pages. It is also ...
- 大数据揭示的10个常见JAVA编程错误
初学者最常犯的编程错误是什么呢?有可能他们总是混淆等值(==)与赋值(=),或者 & 和 &&:也有可能是他们在循环中使用错误的分隔符(for (int i = 0, i &l ...
- [河南省ACM省赛-第三届] AMAZING AUCTION (nyoj 251)
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=251 规则: 1.若某竞标价唯一,则胜出 2.若不存在唯一竞标价,则投标次数最少竞标价中标 ...
- mysql随记
.frm是描述了表的结构,.MYD保存了表的数据记录,*.MYI则是表的索引 ibd是MySQL数据文件.索引文件,无法直接读取. ibdata是innodb引擎使用的 如果是使用myisam引擎 则 ...
- 【IE6的疯狂之三】IE6 3像素BUG的实例
问题:2列布局.左列固定,右列液态我需要做一个布局.2列,左边列固定宽度.右边列使用剩余宽度.整体宽度不固定,这样不管在17 还是19的屏幕上,左边列始终宽度不变,右边列宽度始终占据剩余宽度.但是我写 ...
- SQL 分组排序、CASE...WHEN...、是否为空 查询
select Id,CustomerCode,CustomerName,CreateId,CreateName,Phone,StatusName,(case when phone is not nu ...
- HttpHelps类
/// <summary> /// 类说明:HttpHelps类,用来实现Http访问,Post或者Get方式的,直接访问,带Cookie的,带证书的等方式,可以设置代理 /// 重要提示 ...
- javascript深入理解js闭包(个人理解,大神勿喷)
一.变量的作用域 要理解闭包,首先必须理解Javascript特殊的变量作用域. 变量的作用域无非就是两种:全局变量和局部变量. Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量 ...