Pagini recente » Cod sursa (job #3215312) | Cod sursa (job #1758635) | Cod sursa (job #3230006) | Cod sursa (job #908761) | Cod sursa (job #2849599)
#include <bits/stdc++.h>
#define cin fin
#define cout fout
using namespace std;
ifstream cin ("ciclueuler.in");
ofstream cout ("ciclueuler.out");
vector<int>G[100008];
vector<int>stackk;
vector<int>ans;
int car[500008],n,m,i,k,din[100008],in[100008];
int main()
{
cin>>n>>m;
for(i=1;i<=m;++i)
{
int x,y;
cin>>x>>y;
G[x].push_back(i);
G[y].push_back(i);
in[i]=y;
din[i]=x;
}
stackk.push_back(1);
while(!stackk.empty())
{
k=stackk.back();
if(!G[k].empty())
{
int i=G[k].back();
G[k].pop_back();
if(car[i]==0)
{
car[i]=1;
if(in[i]==k)
stackk.push_back(din[i]);
else
stackk.push_back(in[i]);
}
}
else
{
stackk.pop_back();
ans.push_back(k);
}
}
int j;
for(j=0;j<m;j++)
cout<<ans[j]<<" ";
return 0;
}