Cod sursa(job #547820)

Utilizator popacamilpopa camil popacamil Data 6 martie 2011 18:37:22
Problema Dusman Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include<cstdio>
using namespace std;
int n,m,k,y,k1,k2,nr[6],use[1001],a[1001][1001],ok;
void afiseaza(int nr[]){
	int i=1;
	for(i=1;i<=n;++i){
		printf("%d ",nr[i]);
	}
}
void back(int c){
	int i;
	if(ok) return;
	if(c==n+1){
		++y;
			if(y==k){
		afiseaza(nr);
		ok=1;
			}
		return;
	}

	else{
		for(i=1;i<=n;++i){
			if(use[i]==0){
				use[i]=1;
				nr[c]=i;
				if(a[nr[c]][nr[c-1]]==0){
					back(c+1);
				}
				use[i]=0;
			}
		}
	}
}
int main(){
	freopen("dusman.in","r",stdin);
	freopen("dusman.out","w",stdout);
	scanf("%d%d%d",&n,&k,&m);
	int i;
	for( i=1;i<=m;++i){
		scanf("%d%d",&k1,&k2);
		a[k1][k2]=1;
		a[k2][k1]=1;
	}
	back(1);
	return 0;
}