Cod sursa(job #2399990)

Utilizator RadasanuAmalia27Radasanu Amalia RadasanuAmalia27 Data 8 aprilie 2019 11:14:55
Problema Ciclu Eulerian Scor 30
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include <fstream>
#define NMAX 250

using namespace std;
ifstream fin("ciclueuler.in");
ofstream fout("ciclueuler.out");

int A[NMAX][NMAX];
int sol[5000];
int n,m,p;

void citire();
void euler(int k);

int main()
{
    int i;
    citire();
    euler(1);
    for (i=1;i<p;i++)
        fout<<sol[i]<<" ";
    fout<<'\n';
    return 0;
}

void citire()
{
    int i,x,y;
    fin>>n>>m;
    for (i=1;i<=m;i++)
        {
        fin>>x>>y;
        A[x][y]++;
        A[y][x]++;
        }
}

void euler(int k)
{
    int i;
    for (i=1;i<=n;i++)
        if (A[k][i])
            {
            A[k][i]--;
            A[i][k]--;
            euler(i);
            }
    sol[++p]=k;
}