Pagini recente » Cod sursa (job #1685462) | Cod sursa (job #3334787) | Cod sursa (job #867549) | Cod sursa (job #3338526) | Cod sursa (job #3348995)
#include <bits/stdc++.h>
#define pii pair<int,int>
#define pb push_back
#define ll long long
using namespace std;
ifstream fin("ciclueuler.in");
ofstream fout("ciclueuler.out");
const int nmax=1e5;
multiset<int>v[nmax+1];
vector<int>ans;
void euler(int nod){
while(!v[nod].empty()){
int t=*v[nod].begin();
v[nod].erase(v[nod].find(t));
v[t].erase(v[t].find(nod));
euler(t);
}
ans.pb(nod);
}
int main() {
int n,m;
fn>>n>>m;
for(int i=1;i<=m;i++){
int st,dr;
fin>>st>>dr;
v[st].insert(dr);
v[dr].insert(st);
}
euler(1);
ans.pop_back();
if(ans.size()!=m){
cout<<-1;
return 0;
}
for(int i:ans)
fout<<i<<' ';
return 0;
}