HDOJ3018欧拉路,几笔画判断
//并查集+简单的欧拉路条数判断
#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;const int NN=100005;int degree[NN],p[NN],odd[NN];
int n,m;int pp(int x)
{if (p[x]!=x) p[x]=pp(p[x]);return p[x];
}void init()
{for (int i=1; i<=n; i++){degree[i]=0;odd[i]=0;p[i]=i;}
}int main()
{while (scanf("%d%d",&n,&m)!=EOF){init();int x,y;for (int i=1; i<=m; i++){scanf("%d%d",&x,&y);degree[x]++;degree[y]++;p[pp(y)]=pp(x);}int sum=0;for (int i=1; i<=n; i++){if (degree[i]%2==1) odd[pp(i)]++;}for (int i=1; i<=n; i++){if (pp(i)==i && degree[i]) //孤立点不计;{if (odd[i]==0) sum++; //此连通子图集为一条欧拉回路else sum+=odd[i]/2; //个人觉得无向图的子连通块中,度为奇数的结点数必为偶数个,怎么之前写sum+=(odd[i]+1)/2就WA了咧?}}printf("%d\n",sum);}return 0;
}
HDOJ3018欧拉路,几笔画判断相关推荐
- hdoj 3018 Ant Trip(无向图欧拉路||一笔画+并查集)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3018 思路分析:题目可以看做一笔画问题,求最少画多少笔可以把所有的边画一次并且只画一次: 首先可以求出 ...
- 模板 - 欧拉路、欧拉回路(一笔画问题)
整理的算法模板合集: ACM模板 目录 非递归版 普通递归版 HierholzersHierholzersHierholzers算法(输出字典序最小的答案) FleuryFleuryFleury算法 ...
- 【原创】一笔画问题(欧拉路)
一笔画问题(euler-circuit.cpp) 题目描述 对给定的一个无向图,判断能否一笔画出.若能,输出一笔画的先后顺序,否则输出"No Solution!" 所谓一笔画出,即 ...
- hrbust 哈理工oj 1633 word!word!【欧拉路、欧拉回路的有向图判断】
word!word! Time Limit: 1000 MS Memory Limit: 32768 K Total Submit: 58(20 users) Total Accepted: 25 ...
- 欧拉回路与欧拉路(模板)
欧拉回路 欧拉图: 就是从任意一个点开始都可以一笔画完整个图 半欧拉图: 必须从某个点开始才能一笔画完整个图. 对于无向图 , 是欧拉图当且仅当 是连通的且没有奇度顶点. 对于无向图 , 是半欧拉图当 ...
- 欧拉路HDU3018
欧拉路,欧拉回路,讲的实际上就是一笔画的问题. 给定n个点,m条边,如果能一笔把所有边都连上就是欧拉路,如果起点和终点是同一点,就是欧拉回路. 欧拉路的特征:对于无向图,如果所有点的度都是偶数,那么任 ...
- hdu1161 欧拉路
欧拉路径是指能从一个点出发能够"一笔画"完整张图的路径:(每条边只经过一次而不是点) 在无向图中:如果每个点的度都为偶数 那么这个图是欧拉回路:如果最多有2个奇数点,那么出发点和到 ...
- C/C++数据结构——虚虚实实(并查集欧拉路)
题目描述 震为雷,临危不乱,亨通畅达:巽为风,柔顺伸展,厚载万物. 震卦:洊雷,震,君子以恐惧修省.一口金钟在淤泥,人人拿着当玩石,忽然一日钟悬起,响亮一声天下知. 巽卦:随风,巽,君子以申命行事.一 ...
- 海亮Day2:差分约束、拓扑排序、欧拉路
海亮第二天,想着说预习一下的,可是昨天10h+都没有把那六道题打完,就打了四道,上午就讲完课了,还是延续昨天的博客,今天接着总结.. 欧拉路 开头就是特别经典的七桥问题,讲欧拉路一定会讲到的问题,也就 ...
最新文章
- Openldap配置TLS加密传输(完整版——手动配置)
- C语言中基本的不平衡二进制搜索树实现(附完整源码)
- bitnami如何使用_使用Bitnami获取完全配置的Apache Airflow Docker开发堆栈
- 项目如何从 SVN 迁移到 Git
- 一个页面从输入URL到加载显示完成,发生了什么?
- MetaModelEngine:域模型定义
- NAR | 陈加余/陈亮合作建立R-loop全基因组分布与调控的专家数据库
- linux编译内核的步骤
- Today Take a Look at Nike's Valentine's Day Sneakers
- 常见的设计模式 ----- 桥接模式
- 2016年统计用区划代码和城乡划分代码(截止2016年07月31日) 省市县镇+url
- CRM客户关系管理系统的设计与实现
- 微信小程序源码分享合集-1
- 视频捕获增加color space converter + Transform Filter
- Luogu P1540 机器翻译
- 减持奈飞增持京东健康,“贝莱德们”为何开始偏爱中国企业?
- 欧洲杯上链,区块链语境下的数字化有什么不一样?
- Pytorch 小白记事本 1
- 中兴通讯加入星策开源社区 携手推动企业智能化转型建设
- 阿里云对象存储OSS-断点续传
热门文章
- Altium Designer绘制PCB板子的基本步骤
- new plat (vcam+wifi)项目调试
- dota有哪些经典的典故或笑话?
- 寻找AR中的Big Difference - v3.0 | AR指南
- 过去一年,网易新闻是如何甩开对手的?
- matlab注册表版本号,通过注册表发现Windows版本信息
- 人工智能 ---(01.基础知识)
- 后氧传感器正常数据_氧传感器电压多少正常?氧传感器数据流分析介绍
- matlab 28m35,使用F28M35添加自己写的头文件时,出现了“XXX”has already been declared in the current scope的问题...
- java求最大公约数_java求最大公约数(分解质因数)