HDOJ 1878 欧拉回路 nyoj 42一笔画问题
#include<cstdio>
#include<cstring>
int visited[];
int find(int x)
{
if(visited[x]!=x)
return find(visited[x]);
return x;
}
void make(int a,int b)
{
int f1=find(a);
int f2=find(b);
if(f1!=f2)
visited[f2]=f1;
} int main()
{
int a[];
int n,m,i,j,x,y;
while(scanf("%d",&n)!=EOF&&n)
{
scanf("%d",&m);
int key=;
memset(a,,sizeof(a)); for(i=;i<=n;i++)
{
visited[i]=i;
}
for(i=;i<m;i++)
{
scanf("%d %d",&x,&y);
make(x,y);
a[x]++;
a[y]++;
}
if(m<n-)
printf("0\n");
else
{ int root=find();
for(i=;i<=n;i++)
{
if(a[i]%!=||find(i)!=root)
{
key=;
break;
}
}
if(key)
printf("1\n");
else
printf("0\n");
}
}
return ;
}
1、每个顶点的度为偶数。
2、每个顶点都相连。(m>=n-1)
#include<stdio.h>
#include<string.h>
int pa[];
int find(int x)
{
if(x!=pa[x])
pa[x]=find(pa[x]);
return pa[x];
}
void un(int x,int y)
{
x=find(x);
y=find(y);
if(x!=y)
pa[x]=y;
}
int main()
{
int t,p,q,i,a,b,node[],f,sum,root;
scanf("%d",&t);
while(t--)
{
scanf("%d %d",&p,&q);
for(i=;i<=p;i++)
{
pa[i]=i;
node[i]=;
}
for(i=;i<=q;i++)
{
scanf("%d %d",&a,&b);
un(a,b);
node[a]++;
node[b]++; }
sum=;
f=;
root=find();
for(i=;i<=p;i++)
{
if(root!=find(i))
{
f=;
break;
}
if(node[i]%!=)
sum++;
}
if(sum==&&f==||sum==&&f==)
printf("Yes\n");
else
printf("No\n");
}
return ;
}
欧拉回路或欧拉通路。
HDOJ 1878 欧拉回路 nyoj 42一笔画问题的更多相关文章
- nyoj 42 一笔画 欧拉通路
http://acm.nyist.net/JudgeOnline/problem.php?pid=42 一笔画问题 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 zyc ...
- NYOJ 42 一笔画问题 (并查集+欧拉回路 )
题目链接 描述 zyc从小就比较喜欢玩一些小游戏,其中就包括画一笔画,他想请你帮他写一个程序,判断一个图是否能够用一笔画下来. 规定,所有的边都只能画一次,不能重复画. 输入 第一行只有一个正整数 ...
- NYOJ 42 一笔画问题
一笔画问题 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 zyc从小就比较喜欢玩一些小游戏,其中就包括画一笔画,他想请你帮他写一个程序,判断一个图是否能够用一笔画下 ...
- nyoj 42 一笔画问题 欧拉路径
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=42 欧拉回路,欧拉路径水题~ 代码: #include "stdio.h&quo ...
- hdoj 1878 欧拉回路(无向图欧拉回路+并查集)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1878 思路分析:该问题给定一个无向图,要求判断该无向图是否存在欧拉回路:无向图判断存在欧拉回路的两个必 ...
- hdoj 1878 欧拉回路
欧拉回路 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- NYOJ 42 一笔画
一笔画问题 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 zyc从小就比较喜欢玩一些小游戏,其中就包括画一笔画,他想请你帮他写一个程序,判断一个图是否能够用一笔画下 ...
- nyoj 42
#include <iostream> #include <stdio.h> #include <cstring> #include <algorithm&g ...
- nyist 42 一笔画 (欧拉回路 + 并查集)
nyoj42 分析: 若图G中存在这样一条路径,使得它恰通过G中每条边一次,则称该路径为欧拉路径. 若该路径是一个圈,则称为欧拉(Euler)回路. 具有欧拉回路的图称为欧拉图(简称E图).具有欧拉路 ...
随机推荐
- AngularJS开发指南6:AngularJS表单详解
表单控件(input, select, textarea )是用来获取用户输入的.表单则是一组有联系的表单控件的集合. 用户能通过表单和表单控件提供验证的服务,知道自己的输入是否合法.这样能让用户交互 ...
- Winform中的PictureBox读取图像文件无法释放的问题
今天做一拍照程序,相机SDK什么都搞定,就为了显示图像并且保存照片的步骤卡了半天. 原因是预览图像使用了PictureBox,载入图片文件的方式为: pictureBoxPhoto.Image = I ...
- grunt安装_
grunt_构建WEBJS程序框架,. package.json是文件配置 ====〉〉〉〉 在Gruntfile.js里面会引用到. //目录下直接放node的东西 ,比如: node_module ...
- Java基础-四大特性理解(抽象、封装、继承、多态)
抽象: 象就是有点模糊的意思,还没确定好的意思. 就比方要定义一个方法和类.但还没确定怎么去实现它的具体一点的子方法,那我就可以用抽象类或接口.具体怎么用,要做什么,我不用关心,由使用的人自己去定义去 ...
- Java基础-数据类型int,short,char,long,float,double,boolean,byte
Java语言是静态类型的(statical typed),也就是说所有变量和表达式的类型再编译时就已经完全确定.由于是statical typed,导致Java语言也是强类型(Strong typed ...
- jQuery技术交流资料
jQuery技术交流资料https://www.zybuluo.com/jikeytang/note/65371
- USACO 3.3 fence 欧拉回路
题意:求给定图的欧拉回路(每条边只走一次) 若欧拉回路存在,图中只可能有0个or2个奇数度的点. 求解时,若有奇数度的点,则必须从该点开始.否则可以从任一点开始 求解过程:dfs //主程序部分 # ...
- Android 使用Parcelable序列化对象
转:http://ipjmc.iteye.com/blog/1314145 Android序列化对象主要有两种方法,实现Serializable接口.或者实现Parcelable接口.实现 ...
- ubuntu安装spark on yarn
安装spark 安装hadoop 安装ssh,调试免密钥登录 配置hadoop 配置yarn 测试
- A.3 词法分析器
包 lexer 是词法分析器的代码的扩展.类 Tag 定义了各个词法单元对应的常量. 1: package lexer; 2: public class Tag { 3: public final s ...