P2731求调25分
  • 板块题目总版
  • 楼主All_In_Atom
  • 当前回复0
  • 已保存回复0
  • 发布时间2023/12/22 19:19
  • 上次更新2023/12/22 21:20:21
查看原帖
P2731求调25分
1042481
All_In_Atom楼主2023/12/22 19:19
#include<bits/stdc++.h>
using namespace std;
vector<int> G[10086];
int m;
int minn=10086,maxn=0;
int vis[10086];
int find(int i,int k){
    for(int j=0;j<G[i].size();j++){
        if(G[i][j]==k){
            G[i][j]=0;
            break;
        }
    }
    return 0;
}
void dfs(int x){
    cout<<x<<endl;
    for(int i=0;i<G[x].size();i++){
        if(G[x][i]!=0){
            int t=G[x][i];
            G[x][i]=0;
            find(t,x);
            dfs(t);
        }
    }
}
int main(){
    cin>>m;
    for(int i=1;i<=m;i++){
        int u,v;
        cin>>u>>v;
        G[u].push_back(v);
        G[v].push_back(u);
        minn=min(minn,min(u,v));
        maxn=max(maxn,max(u,v));
    }
    for(int i=1;i<=m;i++){
        if(G[i].size()%2==1){
            dfs(i);
            break;
        }
    }
    return 0;
}
2023/12/22 19:19
加载中...