Pagini recente » Cod sursa (job #801292) | Cod sursa (job #3266417) | Cod sursa (job #2319491) | Cod sursa (job #1906068) | Cod sursa (job #861274)
Cod sursa(job #861274)
#include<fstream>
using namespace std;
void df(int nod);
void dfe(int nod);
int t[100],n,m,a[100][100],s[100];
ifstream fin("ciclueuler.in");
ofstream fout("ciclueuler.out");
int main()
{
int x,y;
fin>>n>>m;
for(int i=1;i<=m;i++)
{
fin>>x>>y;
a[x][y]=a[y][x]=1;
}
df(1);
dfe(1);
fin.close();
fout.close();
return 0;
}
void df(int nod)
{
s[nod]=1;
for(int i=1;i<=n;i++)
if(!s[i] && a[nod][i]==1)
{
t[i]=nod;
df(i);
}
}
void dfe(int nod)
{
fout<<nod<<" ";
for(int i=1;i<=n;i++)
if(a[nod][i])
if(t[nod]!=i && t[i]!= nod)
{
a[nod][i]=a[i][nod]=0;
dfe(i);
}
for(int i=1;i<=n;i++)
if(a[nod][i])
{
a[nod][i]=a[i][nod]=0;
dfe(i);
}
}