HDU-1878-欧拉回路【并查集】
来源:互联网 发布:网络翻唱女歌手 编辑:程序博客网 时间:2024/05/03 09:56
欧拉回路
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 12708 Accepted Submission(s): 4720
Problem Description
欧拉回路是指不令笔离开纸面,可画过图中每条边仅一次,且可以回到起点的一条回路。现给定一个图,问是否存在欧拉回路?
Input
测试输入包含若干测试用例。每个测试用例的第1行给出两个正整数,分别是节点数N ( 1 < N < 1000 )和边数M;随后的M行对应M条边,每行给出一对正整数,分别是该条边直接连通的两个节点的编号(节点从1到N编号)。当N为0时输入结
束。
束。
Output
每个测试用例的输出占一行,若欧拉回路存在则输出1,否则输出0。
Sample Input
3 31 21 32 33 21 22 30
Sample Output
10
定理1:连通多重图中存在欧拉回路当且仅当图中所有顶点的度数为偶数。
定理2:连通多重图中存在欧拉通路且不存在欧拉回路当且仅当连通图中有且只用两个顶点的度数为奇数。
所以存在欧拉回路的条件是:1、所有结点的度数为偶数2、不存在有独立的点
#include<cstdio>#include<algorithm>#include<cstring>using namespace std;int n,m;int fa[1010];int degree[1010];int find(int x){if(x==fa[x])return x;return find(fa[x]);}void Union(int x,int y){int nx=find(x);int ny=find(y);if(nx!=ny) // 满足根节点不同的才合并 // 第一组数据 1 2(合并),1 3(合并),2 3(不合并) {fa[ny]=nx;}}int main(){while(scanf("%d",&n),n){scanf("%d",&m);memset(degree,0,sizeof(degree));for(int i=1;i<=n;i++)fa[i]=i;int a,b;for(int i=1;i<=m;i++){scanf("%d %d",&a,&b);degree[a]++;degree[b]++;Union(a,b);}bool flag=0;int cnt=0;for(int i=1;i<=n;i++){if(fa[i]==i)cnt++; // 检验是否有独立的点 if(degree[i]&1)flag=1; // 保证每个点的度数是偶数 }if(!flag&&cnt==1)puts("1");elseputs("0");}return 0;}
0 0
- hdu 1878 欧拉回路【并查集入门】
- hdu 1878_欧拉回路_并查集
- HDU 1878 欧拉回路 【并查集+欧拉图】
- HDU 1878:欧拉回路【并查集】
- HDU-1878(欧拉回路)(并查集)
- HDU 1878 欧拉回路 【基础并查集】
- 【HDU】-1878-欧拉回路(并查集)
- HDU-1878-欧拉回路【并查集】
- hdu-1878-欧拉回路-图论-并查集-java
- 【HDU 1878】欧拉回路(并查集)
- HDU 1878 欧拉回路 (使用并查集~)
- hdu 1878 欧拉回路 欧拉回路+并查集
- HDU 1878 欧拉回路 (并查集+欧拉回路)
- HDU 1878 欧拉回路(并查集+欧拉回路)
- HDU:1878 欧拉回路(并查集+欧拉回路)
- HDU 1878 欧拉回路(并查集&&欧拉回路)
- 【HDU 1878】欧拉回路(并查集,欧拉回路概念及判定)
- HDU-1878 欧拉回路(并查集,欧拉回路性质)
- linux下的文件与文件夹
- 2016_随记备忘录
- easyui dialog ie7、8下不兼容问题
- 根据图层名获取图层和图层序号
- android开源工具
- HDU-1878-欧拉回路【并查集】
- 从缓存中查找到RegionLocations 的位置
- 初始redis
- 《Java源码分析》:ReentrantLock.unlock 释放锁
- 序列化与反序列化
- iOS小数取整(ceil,round,floor)方法
- NodeJs——(16)用Nodejs 4.X版本,制作一个微博网站(多图,详细步骤)
- 通过runtime替换系统类实现的代码(从github开源库fdstackview中摘录)
- Android-自定义相机