Pagini recente » Cod sursa (job #703166) | Cod sursa (job #1906147) | Cod sursa (job #1012645) | Cod sursa (job #851037) | Cod sursa (job #2978656)
#include <fstream>
using namespace std;
ifstream cin("dusman.in");
ofstream cout("dusman.out");
int n,k,m,g,t;
int viz[1001],st[1001],a[1001];
void afisare()
{
for(int i=1;i<=n;i++)
{
cout<<st[i]<<" ";
}
}
int valid()
{
for(int i=2;i<=n;i++)
{
if(a[st[i-1]]==st[i]) return 0;
}
return 1;
}
void bkt(int k1)
{
if(t==0)
{
for(int i=1;i<=n;i++)
{
if(viz[i]==0)
{
st[k1]=i;
viz[i]=1;
if(k1<n) bkt(k1+1);
else
{
if(k1==n)
{
if(valid()==1) g++;
if(g==k) afisare(),t=1;
}
}
viz[i]=0;
}
}
}
}
int main()
{
cin>>n>>k>>m;
for(int i=1;i<=m;i++)
{
int x,y;
cin>>x>>y;
a[x]=y;
a[y]=x;
}
bkt(1);
}