#T1341. 【例题】一笔画问题

【例题】一笔画问题

管理员正在修改题目,请勿提交

题目描述

如果一个图存在一笔画,则一笔画的路径叫做欧拉路,如果最后又回到起点,那这个路径叫做欧拉回路。

根据一笔画的两个定理,如果寻找欧拉回路,对任意一个点执行深度优先遍历;找欧拉路,则对一个奇点执行 dfs,时间复杂度为 O(m+n)O(m+n)mm 为边数,nn 是点数。

输入

第一行 n,mn,m,有 nn 个点,mm 条边,以下 mm 行描述每条边连接的两点。

输出

第一行一个整数表示路径上的点数,注意输出欧拉回路时第一个点应该被计算两次。

欧拉路或欧拉回路,输出一条路径即可。

样例

5 5
1 2
2 3
3 4
4 5
5 1
6
1 5 4 3 2 1
5 5
1 2
2 3
3 4
4 5
5 1
5
1 5 4 3 2

样例解释

对于同一个图,样例输出 11 为欧拉回路,22 为欧拉路。

数据范围

对于 100%100 \% 的数据,1n1,000,000,1m2,000,0001 \le n \le 1,000,000, 1\le m \le 2,000,000.

来源

一本通在线评测