Pagini recente » Cod sursa (job #1725697) | Cod sursa (job #1886149) | Cod sursa (job #1670715) | Cod sursa (job #2742611) | Cod sursa (job #423791)
Cod sursa(job #423791)
#include <stdio.h>
FILE *f=fopen("dusman.in","r");
FILE *g=fopen("dusman.out","w");
int n,m,k,viz[10001],a[1001][1001],i,a1,b,x[10001];
int cont(int k) {
if(k>1&&a[x[k]][x[k-1]]==1)
return 0;
return 1;
}
void tipar(int k) {
int i;
for(i=1;i<=k;i++)
fprintf(g,"%d ",x[i]);
}
void back() {
int k;
k=1;
x[k]=0;
while(k>0)
if(x[k]<n) {
x[k]++;
if(viz[x[k]]==0)
if(cont(k)) {
viz[x[k]]=1;
if(k==n) {
m--;
if(m==0){
tipar(k);
break;
}
viz[x[k]]=0;
}
else {
k++;
x[k]=0;
}
}
}
else {
k--;
viz[x[k]]=0;
}
}
int main() {
fscanf(f,"%d%d%d",&n,&m,&k);
for(i=1;i<=k;i++) {
fscanf(f,"%d%d",&a1,&b);
a[a1][b]=1;
a[b][a1]=1;
}
back();
return 0;
}