#P1123. 【模板】欧拉路径(Hierholzer 算法)
显示设置
本题导航点一下展开
我的笔记
✕
【模板】欧拉路径(Hierholzer 算法)
题目描述
给定一张 个点、 条边的有向图,图中可能有多条相同的边,但不会出现从一个点指向它自己的边。
一条欧拉路径是指:从某个点出发,顺着一系列边依次行走,使得每条边都恰好走过一次。被走过的边有一个先后顺序,一条路径可以用它经过的顶点序列完整记录下来(共 个顶点)。
在所有合法的欧拉路径里,请输出顶点序列字典序最小的那一条。比较两个长度相同的整数序列时,从左往右逐位比较,第一次出现不同的位置上数字较小的那个序列更小。
如果图中不存在欧拉路径,输出 No。
输入格式
第一行两个整数 和 。
接下来 行,每行两个整数 和 ,表示一条从 指向 的边。
输出格式
如果存在欧拉路径,输出一行共 个整数,相邻两个整数之间用一个空格隔开,表示字典序最小的那条欧拉路径经过的顶点序列;否则输出一行 No。
输入输出样例 #1
输入 #1
4 4
1 2
2 3
3 1
1 4
输出 #1
1 2 3 1 4
说明
数据规模:,,保证 且 。