信息
- ID
- 596
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 8
- 标签
- 递交数
- 159
- 已通过
- 21
- 上传者
#include<bits/stdc++.h>
const int N = 10000000;
using namespace std;
int m[1000][1000],d[N],l[N],sum=1,n,x,y,cnt=0,max_int=0;
void dfs(int i)
{
int cnt1;
for(cnt1 = 1;cnt1 <= max_int;++cnt1)
{
if(m[i][cnt1] >= 1)
{
m[i][cnt1]--,m[cnt1][i]--;
dfs(cnt1);
}
}
l[++cnt]=i;
}
int main()
{
cin >> n;
for (int i = 1;i <= n;++i){
cin >> x >> y;
m[x][y]++,m[y][x]++;
d[x]++,d[y]++;
max_int = max(max_int,max(x,y));
}
for(int i = 1;i <= max_int;++i)
{
if(d[i]%2)
{
sum=i;
break;
}
}
dfs(sum);
for(int i = cnt ; i >= 1;i--){
cout << l[i] << endl;
}
}