Pagini recente » Cod sursa (job #1440821) | Cod sursa (job #1277304) | Cod sursa (job #2686321) | Cod sursa (job #3193302) | Cod sursa (job #117742)
Cod sursa(job #117742)
#include <stdio.h>
#include <stdlib.h>
int mat[1001][4];
int fol[1001];
int st[1001];
int nr=1,n,k1,m;
void readdata() {
int i,a,b;
freopen("dusman.in","r",stdin);
freopen("dusman.out","w",stdout);
scanf("%d %d %d", &n,&k1,&m);
for(i=1; i<=m; i++ ) {
scanf("%d %d",&a,&b);
mat[a][++mat[a][0]]=b;
}
}
void afis() {
int i;
for(i =1 ; i<= n ; i++ )
printf("%d ",st[i]);
}
void back(int k ) {
int i;
if(k==n+1) { nr++; if( nr == k1 ) { afis(); exit(0); } }
else for(i=1; i<=n ;i++ )
if(mat[st[k-1]][1]!=i && mat[st[k-1]][2]!=i && mat[st[k-1]][3]!=i && !fol[i]) {
st[k]= i;
fol[i] =1;
back(k+1);
fol[i]=0;
}
}
int main() {
readdata();
back(1);
return 0;
}