欧拉路径Hrbust1351
http://acm.hrbust.edu.cn/index.php?m=ProblemSet&a=showProblem&problem_id=1351

这道题先利用并查集的知识点,把输入的数据连结起来,形成一个树,然后再逐个结点判断。如果所有的结点都能相连,那么这是一个连通的路径,否则直接跳出,输出。否则记录结点的度的个数,逐个检查。
#include<stdio.h>
#include<algorithm>
#include<string.h>
#include<iostream>
using namespace std;
int fa[],a[];
int fin(int x)//查找两个结点是否出自同一个父亲节点
{
return fa[x]==x?fa[x]:fa[x]=fin(fa[x]);
}
int unin(int x,int y)//将有关联两个节点连结在一起
{
return fa[fin(y)]=fin(x);
}
int main()
{ int m,n;
while(cin>>m>>n){
memset(a,,sizeof(a));
memset(fa,,sizeof(fa));
for(int i=;i<=m;i++){
fa[i]=i;/初始化父亲节点
}
int x;int y;
for(int i=;i<=n;i++){
cin>>x>>y;
if(fin(x)!=fin(y)){//如果两个节点还没有出自同一个结点,那么
unin(x,y);//吧这两个节点连结在一起
}
a[x]++;//同时记录结点的度数
a[y]++;//同时记录结点的度数
}
int sum1=;
for(int i=;i<=m;i++){
if(a[i]%!=){
sum1++;
} }
int flag=;
for(int i=;i<=m;i++){
if(fin(i)!=fin()){//如果结点并不是相连续的,那么
flag=;//记录flag的值
break;//跳出
}
}
if(flag==)
{
printf("Graph is not connected!\n");
continue;
}
if(sum1==)
{
printf("have Euler path\n");
}
else if(sum1==)
{
printf("have Euler Circuit\n");
}
else
{
printf("have no Euler path\n");
} }
return ;
}
欧拉路径Hrbust1351的更多相关文章
- 【USACO 3.3】Riding The Fences(欧拉路径)
题意: 给你每个fence连接的两个点的编号,输出编号序列的字典序最小的路径,满足每个fence必须走且最多走一次. 题解: 本题就是输出欧拉路径. 题目保证给出的图是一定存在欧拉路径,因此找到最小的 ...
- hdu 3472 HS BDC(混合路的欧拉路径)
这题是混合路的欧拉路径问题. 1.判断图的连通性,若不连通,无解. 2.给无向边任意定向,计算每个结点入度和出度之差deg[i].deg[i]为奇数的结点个数只能是0个或2个,否则肯定无解. 3.(若 ...
- poj 2337 有向图输出欧拉路径
Catenyms Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 10186 Accepted: 2650 Descrip ...
- nyoj 42 一笔画问题 欧拉路径
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=42 欧拉回路,欧拉路径水题~ 代码: #include "stdio.h&quo ...
- UESTC 917 方老师的分身IV --求欧拉路径
判断欧拉路径是否存在及求出字典序最小的欧拉路径问题(如果存在). 将字符串的第一个字母和最后一个字母间连边,将字母看成点,最多可能有26个点(a-z),如果有欧拉路径,还要判断是否有欧拉回路,如果有, ...
- POJ1780 Code(欧拉路径)
n位密码,要用尽可能短的序列将n位密码的10n种状态的子串都包括,那么要尽量地重合. 题目已经说最短的是10n + n - 1,即每一个状态的后n-1位都和序列中后一个状态的前n-1位重合. 这题是经 ...
- hdu 1116 并查集和欧拉路径
---恢复内容开始--- 把它看成是一个图 只是需要欧拉路径就可以了 首尾能连成一条线即可 如果要判断这个图是否连通 得用并查集 在hrbust oj里面看答案学到的方法 不用各种for循环套着判断能 ...
- The Best Path---hdu5883(欧拉路径)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5883 题意:n 个点 m 条无向边的图,找一个欧拉通路/回路使得这个路径所有结点的异或值最大. 先判断 ...
- UPC 2170 D Equal Is Not Really Equal (欧拉路径)
题目链接:http://acm.upc.edu.cn/problem.php?id=2170 题意:给出一个字符串,比如ABACA,在这个串里,AB.BA.AC.CA各出现一次.若存在另外一个串,里面 ...
随机推荐
- [mysql] mysql表名忽略大小写
首先查看mysql是否区分大小写: 今天郁闷死了,在LINUX下调一个程序老说找不到表,但是我明明是建了表的,在MYSQL的命令行下也可以查到,为什么程序就找不到表呢? 后来请教了一个老师才搞定,原来 ...
- 在阿里云 centos 6.3上面安装php5.2(转)
由于php程序使用了Zend Optimizer,只能使用php5.2, yum 上的php 是5.3的版本,只能重新安装php:安装步骤如下: 先卸载 php5.3的相关东西: yum remove ...
- shopex后台上传模板漏洞
看到有人找这个拿SHELL的方法.就本地搭建试了下.很简单的. 首先是WIN下.需要WIN主机IIS解析漏洞. 进入后台.点页面管理.点模板列表.默认模板是紫气东来(ShopEx4.8).点编辑模板. ...
- 多线程操作(ThreadPool.QueueUserWorkItem
主线程: private void GetPolicy_Load(object sender, EventArgs e) { ////ThreadPool.QueueUserWorkItem(new ...
- Struts 1.3(第一例) - Login
本想跳过直接学Struts 2的,想想,还是先学Struts 1,万一到时去那个公司,人家用的是1,那还是要学,以及了解下1与2的区别在哪里. 上例子,很简单的一个网上login例子,再思考下Stru ...
- 关于checkbox的attr无效的问题
jq用了10版本的,一直发现attr无效,查找良久,由同事帮忙解决该问题,感谢. 特记录下该问题. 由于 新版本attr换成了prop的问题. $("input[name='delIds'] ...
- javascript中的变量、执行环境、作用域
- CXF发布restful WebService的入门例子(服务器端)
研究了两天CXF对restful的支持. 现在,想实现一个以 http://localhost:9999/roomservice 为入口, http://localhost:9999/roomse ...
- BIP_开发案例04_通过BI Publisher实现打印报表的二维码(案例)(待整理)
2014-01-01 Created BaoXinjian
- Workflow_如何处理标准异常和自定义异常(案例)
2014-05-31 Created By BaoXinjian