感觉写的没问题,但是只能过一半的点
求大佬帮忙调一下
//2023/4/27
//别着急,先通读一遍题目
//别忘了开long long
//写完先看一遍怎么降复杂度
//要么开全局变量要么给定初值
//想想看,有什么情况需要特判
//std::ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);
#include<bits/stdc++.h>
using namespace std;
const int MAXN=1e6+10;
int n,e,start,k;
int x,y;
int g[110][110];
int du[110];
int ans[110];
void dfs(int i)
{
for (int j=1;j<=n;j++)
{
if(g[i][j]==1)
{
g[i][j]=g[j][i]=0;
dfs(j);
}
}
ans[++k]=i;
}
int main()
{
cin>>n>>e;
for (int i=1;i<=e;i++)
{
cin>>x>>y;
g[x][y]=g[y][x]=1;
du[x]++;
du[y]++;
}
start=1;
for (int i=1;i<=n;i++)
{
if(du[i]%2==1)
{
start=i;
}
}
dfs(start);
for (int i=1;i<=k;i++)
{
cout<<ans[i]<<" ";
}
return 0;
}