Pagini recente » Cod sursa (job #2724424) | Cod sursa (job #552394) | Cod sursa (job #2569644) | Cod sursa (job #2569126) | Cod sursa (job #1542821)
#include <stdio.h>
#include <stdlib.h>
#define nmax 1010
using namespace std;
int n,k,m,x,y,i,j,t[nmax],nr,fr[nmax];
bool ok[nmax][nmax];
void back(int x)
{
if (x==n+1 && nr<k-1) { nr++; return; }
if (x==n+1 && nr==k-1) {
for (int i=1;i<=n;i++) printf("%d ",t[i]);
printf("\n");
exit(0);
}
for (int i=1;i<=n;i++)
if (!ok[t[x-1]][i] && fr[i]==0) { t[x]=i; fr[i]=1; back(x+1); fr[i]=0; }
}
int main() {
freopen("dusman.in","r",stdin);
freopen("dusman.out","w",stdout);
scanf("%d %d %d",&n,&k,&m);
for (i=1;i<=m;i++) {
scanf("%d %d",&x,&y); ok[x][y]=ok[y][x]=true;
}
back(1);
return 0;
}