Pagini recente » Cod sursa (job #1158477) | Cod sursa (job #2789730) | Cod sursa (job #298917) | Cod sursa (job #1087116) | Cod sursa (job #2152164)
#include <fstream>
#include <vector>
#define DEFN 100010
#define DEFM 500010
using namespace std;
ifstream fin ("ciclueuler.in");
ofstream fout ("ciclueuler.out");
vector < pair < int, int > > L[DEFN];
int n, m;
bool M[DEFM];
vector < int > Sol;
void dfs (int v) {
for (int i = 0; i < L[v].size (); ++ i) {
pair < int, int > u = L[v][i];
if (M[u.second] == 0) {
M[u.second] = 1;
dfs (u.first);
}
}
Sol.push_back (v);
}
int main () {
fin >> n >> m;
for (int i = 1; i <= m; ++ i) {
int x, y;
fin >> x >> y;
L[x].push_back (make_pair (y, i));
L[y].push_back (make_pair (x, i));
}
dfs (1);
for (int i = 0; i < Sol.size (); ++ i) {
fout << Sol[i] << " ";
}
return 0;
}