题目描述
输入一个无向连通图的,判断这个图是否存在欧拉回路,如果没有则输出“no oula circle”,如果有,输出以顶点1开始的一条欧拉回路,回路上顶点序号优先小的。
输入描述
第一行一个整数 n 和 k,表示这个图有 n 个顶点、k 条边,接下来 k 行,每行两个整数 ai 和 aj,表示顶点 ai 和 aj之间有一条边。
输出描述
如果不存在欧拉回路,请输出“no oula circle”,如果有欧拉回路,请输出顶点 1 开始的欧拉回路的顶点编号。
样例输入 1
6 7 1 2 1 3 3 4 2 4 4 5 5 6 6 4
样例输出 1
1 2 4 5 6 4 3 1
数据范围与提示
1<n,m≤100
代码(可复制)
#include<bits/stdc++.h>
using namespace std;
int n,m,arr[101][101],vis[101][101],dot[101],ans[101],flag;
void dfs(int x,int cnt){
if(flag) return;
ans[cnt]=x;
if(cnt>m){
flag=true;