Pagini recente » Taietura | Statistici Drutu Bogdan (bogdandrutu) | Cod sursa (job #1687064) | Cod sursa (job #2023503) | Cod sursa (job #115433)
Cod sursa(job #115433)
#include<stdio.h>
#include<stdlib.h>
int n,i,m,nr,j,o,q,pwn,used[1000],st[1000],dusm[10000][3];
void afisare()
{
int i,xyz=0;
o=0;
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
if(dusm[j][1]==st[i])
if(st[i-1]==dusm[j][2] || st[i+1]==dusm[j][2])
{
o=1;
break;
}
}
if(o==0)
{
q++;
xyz=1;
}
if(q==nr && xyz==1)
{
pwn=1;
for(i=1;i<=n;i++)
printf("%d ",st[i]);
}
}
void GenPerm(int k)
{
int c;
if(k==n+1)
{
afisare();
if(pwn==1) exit(0);
}
else
{
for(c=1;c<=n;c++)
if(!used[c])
{
st[k]=c;
used[c]=1;
GenPerm(k+1);
used[c]=0;
}
}
}
int main()
{
freopen("dusman.in","r",stdin);
freopen("dusman.out","w",stdout);
scanf("%d%d%d",&n,&nr,&m);
for(i=1;i<=m;i++)
for(j=1;j<=2;j++)
scanf("%d",&dusm[i][j]);
GenPerm(1);
return 0;
}