Pagini recente » Cod sursa (job #2327267) | Cod sursa (job #2684457) | Cod sursa (job #172187) | Cod sursa (job #298121) | Cod sursa (job #1767163)
#include <iostream>
#include <fstream>
using namespace std;
int a[19001][19001], eul[500001], n, m, ind, sf;
void citesc()
{
ifstream f("ciclueuler.in");
int i, j, x, y;
f >> n >> m;
for(i=1; i<=m; i++)
{
f >> x >> y;
a[x][y]=1;
a[y][x]=1;
}
f.close();
}
void ciclu(int i)
{
int j, k;
for(k=1; k<=n; k++)
{
if(a[eul[i]][k]==1)
{
a[eul[i]][k]=0;
a[k][eul[i]]=0;
sf++;
for(j=sf; j>i; j--)
eul[j]=eul[j-1];
eul[++i]=k;
ciclu(i);
}
}
}
int main()
{
int i;
citesc();
eul[1]=1;
sf=1;
for(i=1; eul[i]; i++)
{
ciclu(i);
}
ofstream g("ciclueuler.out");
for(i=1; i<=sf; i++)
g<<eul[i]<<" ";
g.close();
return 0;
}