Cod sursa(job #130181)

Utilizator bogdanhm999Casu-Pop Bogdan bogdanhm999 Data 31 ianuarie 2008 15:22:01
Problema Dusman Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <stdio.h>

long n,m,k,v[1002],p[1002],a[1002][1002],x,y;

void afisare(){
     for (int i=1;i<=n;i++)
         printf("%ld ",p[i]);
     printf("\n");
}

void perm(int i)   
{   
    if(k<0) return;   
    if(i>n){
        k--;     
        if(k==0){ 
           afisare();           
           return;
        }
    }
    for(int j=1;j<=n;++j)   
        if(!v[j]&&!a[p[i-1]][j]){
            v[j]=1;   
            p[i]=j;   
            perm(i+1);   
            v[j]=0;   
        }
}

int main(){
    freopen("dusman.in","r",stdin);
    freopen("dusman.out","w",stdout);
    
    scanf("%ld %ld %ld",&n,&k,&m);
    for (int i=1;i<=m;i++){
        scanf("%ld %ld",&x,&y);
        a[x][y]=1;
        a[y][x]=1;
    }
    perm(1);
    
return 0;
}