Cod sursa(job #2482219)

Utilizator miruna1224Floroiu Miruna miruna1224 Data 27 octombrie 2019 21:29:36
Problema Dusman Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <fstream>
#include <iostream>
#include <cstdio>

using namespace std;

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


int st[1015], a[1015][1015], ut[1015], k, n, m, k1;


void afisare()
{
	for(int i = 1; i <= n; i++)
		out << st[i] << " ";
	out << '\n';
}

void bkt(int i)
{
	for(int kk = 1; kk <= n; kk++)
	{
		if( !a[st[i - 1]][kk] && !ut[kk])
		{
			st[i] = kk;
			ut[kk] = 1;
			if(i == n)
			{
				k1++;
				if(k1 == kk)
					afisare();
				ut[kk] = 0;
			}
			else{
				bkt(i + 1);
				ut[kk] = 0;
			}
		}
	}
}


int main()
{
	ios::sync_with_stdio(false);
	int v1,v2;
	in >> n >> k >> m;

	for(int i = 1; i <= m ; i++)
	{
		in >> v1 >> v2;
		a[v1][v2] = 1;
		a[v2][v1] = 1;
	}

	bkt(1);

	in.close();
	out.close();

	return 0;
}