题目链接:点击打开链接

题目大意:略。

解题思路:并查集 + 顶点度数偶数判断
如果图G中的一个路径包括每个边恰好一次,则该路径称为欧拉路径(Euler path)。
如果一个回路是欧拉路径,则称为欧拉回路(Euler circuit)。
具有欧拉回路的图称为欧拉图(简称E图)。具有欧拉路径但不具有欧拉回路的图称为半欧拉图。

1、无向图存在欧拉回路的充要条件:
一个无向图存在欧拉回路,当且仅当该图所有顶点度数都为偶数,且该图是连通图。
2、有向图存在欧拉回路的充要条件:
一个有向图存在欧拉回路,所有顶点的入度等于出度且该图是连通图。

AC 代码

#include<bits/stdc++.h>
#include<cmath>#define mem(a,b) memset(a,b,sizeof a);
#define INF 0x3f3f3f3fusing namespace std;typedef long long ll;const int maxn=1010;int n,m;
int pre[maxn], vis[maxn][maxn], deg[maxn];void init()
{for(int i=1;i<=n;i++) pre[i]=i;mem(vis,0);mem(deg,0);
}int find(int x)
{return pre[x]==x?x:pre[x]=find(pre[x]);
}int main()
{while(~scanf("%d%d",&n,&m)){init();int u,v;for(int i=0;i<m;i++){scanf("%d%d",&u,&v);if(!vis[u][v]){vis[u][v]=vis[v][u]=1;deg[u]++, deg[v]++;}pre[find(u)]=pre[find(v)]; // 合并为同一个根}int cnt=0;for(int i=1;i<=n;i++){if(pre[i]==i) // 统计 root 结点个数{cnt++;if(cnt>1) break;}if(deg[i]%2!=0) // 必须所有顶点度数都为偶数{cnt=-1; break;}}puts(cnt==1?"1":"0");}return 0;
}

数据结构与算法题目集(中文) - 7-32 哥尼斯堡的“七桥问题”(25 分)相关推荐

  1. 7-32 哥尼斯堡的“七桥问题” (25 分)(思路+详解+题目分析)两种做法任选其一

    一:题目: 哥尼斯堡是位于普累格河上的一座城市,它包含两个岛屿及连接它们的七座桥,如下图所示. 可否走过这样的七座桥,而且每桥只走过一次?瑞士数学家欧拉(Leonhard Euler,1707-178 ...

  2. 结构与算法 7-32 哥尼斯堡的“七桥问题” (25 分)

    7-32 哥尼斯堡的"七桥问题" (25 分) 哥尼斯堡是位于普累格河上的一座城市,它包含两个岛屿及连接它们的七座桥,如下图所示. 可否走过这样的七座桥,而且每桥只走过一次?瑞士数 ...

  3. 哥尼斯堡的“七桥问题” (欧拉回路,并查集)

    哥尼斯堡的"七桥问题"   (25分) 哥尼斯堡是位于普累格河上的一座城市,它包含两个岛屿及连接它们的七座桥,如下图所示. 可否走过这样的七座桥,而且每桥只走过一次?瑞士数学家欧拉 ...

  4. 7-12 哥尼斯堡的“七桥问题” (25 分)(并查集)

    7-12 哥尼斯堡的"七桥问题" (25 分) 哥尼斯堡是位于普累格河上的一座城市,它包含两个岛屿及连接它们的七座桥,如下图所示. 可否走过这样的七座桥,而且每桥只走过一次?瑞士数 ...

  5. 数据结构与算法题目集7-32——哥尼斯堡的“七桥问题”

    我的数据结构与算法题目集代码仓:https://github.com/617076674/Data-structure-and-algorithm-topic-set 原题链接:https://pin ...

  6. PTA 哥尼斯堡的“七桥问题”(并查集 + 性质判断)

    哥尼斯堡是位于普累格河上的一座城市,它包含两个岛屿及连接它们的七座桥,如下图所示. 可否走过这样的七座桥,而且每桥只走过一次?瑞士数学家欧拉(Leonhard Euler,1707-1783)最终解决 ...

  7. 案例6-1.3 哥尼斯堡的“七桥问题” (并查集)

    哥尼斯堡是位于普累格河上的一座城市,它包含两个岛屿及连接它们的七座桥,如下图所示. 可否走过这样的七座桥,而且每桥只走过一次?瑞士数学家欧拉(Leonhard Euler,1707-1783)最终解决 ...

  8. 7-32 哥尼斯堡的“七桥问题” (欧拉回路)(PAT算法题目集)

    7-32 哥尼斯堡的"七桥问题" 分数 25 作者 DS课程组 单位 浙江大学 哥尼斯堡是位于普累格河上的一座城市,它包含两个岛屿及连接它们的七座桥,如下图所示. 可否走过这样的七 ...

  9. 数据结构与算法实验6——图论 7-9 哥尼斯堡的“七桥问题”

    哥尼斯堡是位于普累格河上的一座城市,它包含两个岛屿及连接它们的七座桥,如下图所示. 可否走过这样的七座桥,而且每桥只走过一次?瑞士数学家欧拉(Leonhard Euler,1707-1783)最终解决 ...

最新文章

  1. 读取Node.js中的环境变量
  2. winform datagridview控件使用
  3. LSTM implementation explained
  4. mysql 索引- 笔记
  5. 第二十期:黄金三步法 | 汇报时,如何让老板快速抓住重点?
  6. Mysql数据库备份和还原常用的命令
  7. Elasticell-聊聊Raft的优化
  8. react轮播图插件_React 基础面试题 - 和你随便聊聊 React
  9. 51单片机温控风扇仿真原理图 C语言程序,51单片机温控风扇(含程序+原理图+仿真+PCB)...
  10. 【Android工具】神器来了,游戏安装加速器ourplay,重点:附赠强大免费gmail邮箱注册...
  11. 神经网络建模的基本思想,建模方法神经网络设计
  12. Muti-scale related papers
  13. Self-attention GAN
  14. 信息收集的方法有哪些
  15. 在OpenGL中实现Geometry Instancing
  16. 静态、动态、伪静态的URL结构到底哪种更利于SEO
  17. 微信与星巴克合推用星说,小卡背后有什么大招?
  18. java-php-python-仓储ERP系统计算机毕业设计
  19. 富文本编辑器处理过的字符串部分字符正则捕获不到,含有不可见字符\u200B
  20. 软考--流水线问题吞吐率详解

热门文章

  1. Android 倒计时动画
  2. Python中*args和**kwargs的使用方法
  3. Swagger(丝袜哥) 快速入门(超详细介绍)
  4. c语言多行注释的是,c语言多行注释符号是什么_后端开发
  5. AI如何影响智能交互
  6. 海康彩色工业相机图像格式转换方法(Bayer转RGB)
  7. Mysql数据库几种搜索引擎
  8. JavaScript笔记(二)——HTML中的JavaScript
  9. UILocalNotification实现本地的闹钟提醒
  10. 360未来中国微软帝国