Cod sursa(job #2399969)

Utilizator Cosmin17Ungureanu Cosmin Cosmin17 Data 8 aprilie 2019 11:06:42
Problema Ciclu Eulerian Scor 20
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.88 kb
#include <fstream>
#define NMAX 10005

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

void citire();
void DFS(int x);
void rezolv(int x);

int MA[NMAX][NMAX];
bool uz[NMAX];
int sol[NMAX];
int n,m,k;
int main()
{
    citire();
    for(int i=1; i<k; i++)
        fout<<sol[i]<<" ";
    fout<<endl;
    return 0;
}
void citire()
{
    int i,x,y;
    fin>>n>>m;
    for(i=1; i<=m; i++)
    {
        fin>>x>>y;
        MA[x][y]=MA[y][x]+=1;
    }
    rezolv(1);
}
void DFS(int x)
{
    int i;
    for(i=1; i<=n; i++)
        if(uz[i]==0 && MA[x][i]==1)
        {
            uz[i]=1;
            DFS(i);
        }
}
void rezolv(int x)
{ int i;
   for(i=1; i<=n; i++)
   {
       if(MA[x][i]>=1)
       {
           MA[x][i]--;
           MA[i][x]--;
           rezolv(i);
       }

   }
   k++;
    sol[k]=x;
}