Pagini recente » Cod sursa (job #1156237) | Cod sursa (job #3133443) | Cod sursa (job #1436221) | Cod sursa (job #1793111)
#include <cstdio>
#include <vector>
#include <algorithm>
using namespace std;
vector<int> v[100000];
int n, m;
int st[500005], lst = 0;
void euler(int i)
{
while(!v[i].empty())
{
int a = v[i].back();
v[i].pop_back();
v[a].erase(find(v[a].begin(), v[a].end(), i));
euler(a);
}
st[lst++] = i;
}
int main()
{
int i, a, b;
freopen("ciclueuler.in", "r", stdin);
freopen("ciclueuler.out", "w", stdout);
scanf("%d%d", &n, &m);
for(i = 0; i < m; i++)
{
scanf("%d%d", &a, &b);
a--; b--;
v[a].push_back(b);
v[b].push_back(a);
}
euler(0);
for(i = 0; i < lst - 1; i++)
printf("%d ", st[i] + 1);
return 0;
}