Cod sursa(job #2802700)
| Utilizator | Data | 18 noiembrie 2021 17:51:04 | |
|---|---|---|---|
| Problema | Ciclu Eulerian | Scor | 0 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.56 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("ciclueuler.in");
ofstream fout("ciclueuler.out");
int n, m, nc = 0;
int c[500001];
int g[100001][100001];
void euler(int x)
{
for(int urm = 1; urm <= n; ++urm)
{
if(g[x][urm])
{
g[x][urm] = 0,
g[urm][x] = 0;
euler(urm);
}
c[nc++] = x;
}
}
int main()
{
fin >> n >> m;
int u, v;
for(int i = 1; i <= m; ++i)
{
fin >> u >> v;
g[u][v] = 1,
g[v][u] = 1;
}
euler(1);
for(int i = 1; i <= nc; ++i)fout << c[i] << ' ';
return 0;
}