Cod sursa(job #3167776)

Utilizator Luca_georgescuLucageorgescu Luca_georgescu Data 11 noiembrie 2023 09:00:13
Problema Ciclu Eulerian Scor 40
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.62 kb
#include <bits/stdc++.h>

using namespace std;

ifstream f("ciclueuler.in");
ofstream g("ciclueuler.out");

long long u,v,n,m,nr,Q[500005];
int G[10005][10005];

void euler (int x)
{
    for (int i=1; i<=n; i++ )
        if ( G[x][i] )
        {
            G[x][i]--;
            G[i][x]--;
            euler(i);
        }
    Q[++nr]=x;
}

int main()
{
    f >> n >> m;
    for (int i=1; i<=m; i++ )
    {
        f >> u >> v;
        G[u][v]++;
        G[v][u]++;
    }
    euler(1);
    if ( nr==0 )
        g << -1;
    else for (int i=nr; i>1; i-- )
        g << Q[i] << " ";
    return 0;
}