Cod sursa(job #763586)

Utilizator ioanabIoana Bica ioanab Data 2 iulie 2012 17:20:36
Problema Dusman Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <fstream>
using namespace std;

ifstream in("dusman.in");
ofstream out("dusman.out");

const int N=1005;

int a[N][N],use[N],sol[N];
int n,m,k;

void afis()
{
	for(int i=1;i<=n;i++)
		out<<sol[i]<<" ";
	out<<"\n";
}
void bkt(int l)
{
	if(k<0)
		return;
	if(l-1==n)
	{
		k--;
		if(k==0)
		{
			afis();
			return;
		}
	}
	
	for(int i=1;i<=n;i++)
	{
		if(!use[i] && ! a[sol[l-1]][i])
		{
			sol[l]=i;
			use[i]=true;
			bkt(l+1);
			use[i]=false;
		}
	}
}
			
int main()
{
	int x,y;
	in>>n>>k>>m;
	
	while(m--)
	{
		in>>x>>y;
		a[x][y]=1;
		a[y][x]=1;
	}
	
	bkt(1);
}