Pagini recente » Cod sursa (job #2068932) | Cod sursa (job #2005555) | Cod sursa (job #2145645) | Cod sursa (job #63049) | Cod sursa (job #2024407)
#include <algorithm>
#include <stdio.h>
#include <stdlib.h>
#include <cstdlib>
using namespace std;
bool dusman[1002][1002];
int mark[1010];
int coloana[1010];
int n,k,m;
int verif(int level){
int i;
if(level==1){
return 1;
}
if(dusman[coloana[level]][coloana[level-1]]==1){
return 0;
}
return 1;
}
void genperm(int level){
int i,j,rez;
for(i=1;i<=n;i++){
if(mark[i]==0){
coloana[level]=i;
rez=verif(level);
if(rez==0){
coloana[level]=0;
continue;
}
mark[i]=1;
if(level==n){
k--;
if(k==0){
for(j=1;j<=n;j++){
printf("%d ",coloana[j]);
}
// printf("\n");
exit(0);
}
}else{
genperm(level+1);
}
}else{
continue;
}
mark[i]=0;
coloana[level]=0;
}
}
int main()
{
int i,a,b;
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",&a,&b);
dusman[a][b]=1;
dusman[b][a]=1;
}
genperm(1);
return 0;
}