题库链接:http://acm.hdu.edu.cn/showproblem.php?pid=5883

欧拉回路裸题,第一次接触欧拉路的我是真的长见识了^-^

懂了欧拉路这道题就是没什么问题了,欧拉路,指在一个连通图中,一条可以遍历到每条边的路径,按照起点和终点的差异分为欧拉通路(路径的起点和终点不重合)和欧拉回路(路径的起点和终点是同一点)。

1.对于无向连通图,

  形成欧拉通路的条件:图中的度数为奇数的结点有且仅有两个,其余结点度数均为偶数。

  形成欧拉回路的条件:图中的每个结点度数为偶数,或者恰好含有两个度数为奇数的结点。

2.对于有向连通图,

  形成欧拉通路的条件:图中除两个结点外,其余各结点都满足出度等于入度,并且这两个结点中,其中一个出度大于入度,另一个入度大于出度,并且以出度大于入度的点为起点,入度大于出度的点为终点。

  形成欧拉回路的条件:图中的每个结点出度等于入度

  

#include<bits/stdc++.h>

using namespace std;

int n,m;
int a[],degree[]; int main(){
int t;
scanf("%d",&t);
while(t--){
memset(degree,,sizeof(degree));
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++)
scanf("%d",&a[i]);
int u,v;
for(int i=;i<=m;i++){
scanf("%d%d",&u,&v);
degree[u]++;
degree[v]++;
}
int flag=,tmp=,num=;
int id[];
for(int i=;i<=n;i++){
if(degree[i]%){
flag=;
num++;
if(num<)
id[num-]=i;
}
if((degree[i]/)&)
tmp^=a[i];
}
if(!flag&&num!=)
cout<<"Impossible\n";
else {
int ans=;
if(num==){
for(int i=;i<=n;i++){
ans=max(ans,tmp^a[i]);
}
}
else ans=tmp^a[id[]]^a[id[]];
cout<<ans<<endl;
}
}
return ;
}

  

The Best Path(HDU5883)[欧拉路]2016青岛online的更多相关文章

  1. hdu5883 The Best Path(欧拉路)

    题目链接:hdu5883 The Best Path 比赛第一遍做的时候没有考虑回路要枚举起点的情况导致WA了一发orz 节点 i 的贡献为((du[i] / 2) % 2)* a[i] 欧拉回路的起 ...

  2. hdu_5883_The Best Path(欧拉路)

    题目链接:hdu_5883_The Best Path 题意: n 个点 m 条无向边的图,找一个欧拉通路/回路使得这个路径所有结点的异或值最大. 题解: 节点 i 的贡献为((du[i] +1/ 2 ...

  3. 2016青岛网络赛 The Best Path

    The Best Path Time Limit: 9000/3000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) Pr ...

  4. HDU 5883 The Best Path (欧拉路或者欧拉回路)

    题意: n 个点 m 条无向边的图,找一个欧拉通路/回路使得这个路径所有结点的异或值最大. 析:由欧拉路性质,奇度点数量为0或2.一个节点被进一次出一次,度减2,产生一次贡献,因此节点 i 的贡献为 ...

  5. hdu 5833(欧拉路)

    The Best Path Time Limit: 9000/3000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)Tot ...

  6. 洛谷P1341 无序字母对[无向图欧拉路]

    题目描述 给定n个各不相同的无序字母对(区分大小写,无序即字母对中的两个字母可以位置颠倒).请构造一个有n+1个字母的字符串使得每个字母对都在这个字符串中出现. 输入输出格式 输入格式: 第一行输入一 ...

  7. hihocoder 1181 欧拉路.二

    传送门:欧拉路·二 #1181 : 欧拉路·二 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 在上一回中小Hi和小Ho控制着主角收集了分散在各个木桥上的道具,这些道具其 ...

  8. hiho 1182 : 欧拉路·三

    1182 : 欧拉路·三 这时题目中给的提示: 小Ho:是这样的,每次转动一个区域不是相当于原来数字去掉最左边一位,并在最后加上1或者0么. 于是我考虑对于"XYYY",它转动之后 ...

  9. hiho欧拉路·二 --------- Fleury算法求欧拉路径

    hiho欧拉路·二 分析: 小Ho:这种简单的谜题就交给我吧! 小Hi:真的没问题么? <10分钟过去> 小Ho:啊啊啊啊啊!搞不定啊!!!骨牌数量一多就乱了. 小Hi:哎,我就知道你会遇 ...

随机推荐

  1. Python 之父撰文回忆:为什么要创造 pgen 解析器?

    花下猫语: 近日,Python 之父在 Medium 上开通了博客,并发布了一篇关于 PEG 解析器的文章(参见我翻的 全文译文).据我所知,他有自己的博客,为什么还会跑去 Medium 上写文呢?好 ...

  2. Initialization failed for 'https://start.spring.io' Please check URL

    错误描述:Initialization failed for 'https://start.spring.io' Please check URL, network and proxy setting ...

  3. 【MySQL】服务无法启动(Mac)

    如图所示: 点击 Start MySQL Server 没反应-- 终端输入 mysql 命令时报错如下: ERROR 2002 (HY000): Can't connect to local MyS ...

  4. 【Python-Django模型迁移】用户数据库模型的迁移(对其他数据库迁移同样适用)!!!

    迁移用户模型类 1. 指定用户模型类 文档 思考:为什么Django默认用户模型类是User? 阅读源代码:'django.conf.global_settings’ AUTH_USER_MODEL ...

  5. ProcessBuilder waitFor 调用外部应用

    小程序项目最初使用ffmpeg转换微信录音文件为wav格式,再交给阿里云asr识别成文字.视频音频转换最常用是ffmpeg. 1 ffmpeg -i a.mp3 b.wav 相关文章: 小程序实现语音 ...

  6. 对于HTTP过程中POST内容加密的解决方案

    0x00前言 前几天我师傅和我提及了这件事情 正常情况下 抓包过程中遇到加密情况会很迷茫 昨天把这个都弄了一下 也感谢大佬中间的指导 我一开始看到密码的类型下意识的是base64 但是去解密发现不对 ...

  7. vue通信、传值的多种方式(详细)

    转载自https://blog.csdn.net/qq_35430000/article/details/79291287

  8. python3学习-Queue模块

    python标准库中带有一个Queue模块,顾名思义,队列.该模块也衍生出一些基本队列不具有的功能. 我们先看一下队列的方法: put 存数据 get 取数据 empty 判断队列是否为空 qsize ...

  9. 【Kubernetes 系列三】Kubernetes 学习文档推荐

    标题 地址 备注 Kubernetes 官方文档 https://kubernetes.io/docs 英文文档,全面 Kubernetes Handbook ttps://jimmysong.io/ ...

  10. 1.1Django简介和虚拟环境配置

    MVC 大部分开发语言中都有MVC框架 MVC框架的核心思想是:解耦 降低各功能模块之间的耦合性,方便变更,更容易重构代码,最大程度上实现代码的重用 m表示model,主要用于对数据库层的封装 v表示 ...