Pagini recente » Cod sursa (job #1399190) | Cod sursa (job #914686) | Cod sursa (job #1926204) | Cod sursa (job #1907909) | Cod sursa (job #1881051)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("ciclueuler.in");
ofstream g("ciclueuler.out");
int n,m,a[1000][1000],x[1000];
void citire()
{
int x,y;
f>>n>>m;
for(int i=1; i<=m; i++)
{
f>>x>>y;
a[x][y]=1;
a[y][x]=1;
}
}
void afis()
{
for(int i=1; i<=m+1; i++)
g<<x[i]<<" ";
g<<endl;
}
int cond(int k)
{
if(k>1)
if(a[x[k-1]][x[k]]==0) return 0;
return 1;
}
void back(int k)
{
for(int i=1; i<=n; i++)
{
x[k]=i;
if(cond(k))
{
a[x[k-1]][x[k]]=0;
a[x[k]][x[k-1]]=0;
if(k==m+1)
{
afis();
}
else
{back(k+1);
a[x[k-1]][x[k]]=1;
a[x[k]][x[k-1]]=1;}
}
}
}
int main()
{
citire();
back(1);
return 0;
}