本文主要是介绍2054. 骑马修栅栏,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
代码
#include<bits/stdc++.h>
using namespace std;
int mp[505][505];
queue<int> ans;
int du[505];
int n=0,m,u,v;void dfs(int i)
{for(int j=1;j<=n;j++){if(mp[i][j]>=1){mp[i][j]--;mp[j][i]--;dfs(j);}}ans.push(i);
}
int main()
{cin>>m;for(int i=1;i<=m;i++){cin>>u>>v;mp[u][v]++;mp[v][u]++;du[u]++;du[v]++;n=max(n,max(u,v)); }int start=1;for(int i=1;i<=n;i++){if(du[i]%2==1){start=i;break; }}dfs(start);int len=ans.size();int ansans[len];int cnt=0;while(!ans.empty()){ansans[cnt++]=ans.front();ans.pop();}for(int i=len-1;i>=0;i--){cout<<ansans[i]<<endl;}return 0;
}
记得点赞+关注+收藏!!!谢谢!!!
这篇关于2054. 骑马修栅栏的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!