Cod sursa(job #733092)

Utilizator SebiSebiPirtoaca George Sebastian SebiSebi Data 11 aprilie 2012 14:12:38
Problema Dusman Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include<iostream>
#include<fstream>
#include<bitset>
using namespace std;
bitset <1001> d[1001];
bitset <1001> dd;
int st[1001],c,n,k,i;
inline void bktr(int p)
{
	int pval;
	for(pval=1;pval<=n;pval++)
		if(c==1)
			return;
		else if((d[st[p-1]][pval]==0)&&(dd[pval]==0)) {
			dd[pval]=1;
			st[p]=pval;
			if(p==n)
				i++;
			else bktr(p+1);
			if(i==k)
				c=1;
			dd[pval]=0;
		}
}
int main ()
{
	int i,x,y,m;
	ifstream f("dusman.in");
	ofstream g("dusman.out");
	f>>n>>k>>m;
	for(i=1;i<=m;i++) {
		f>>x>>y;
		d[x][y]=1;
		d[y][x]=1;
	}
	f.close();
	bktr(1);
	for(i=1;i<=n;i++)
		g<<st[i]<<" ";
	g.close();
	return 0;
}