Cod sursa(job #2894321)

Utilizator lolismekAlex Jerpelea lolismek Data 27 aprilie 2022 18:21:10
Problema Dusman Scor 90
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <iostream>
#include <fstream>

#pragma GCC optimize("Ofast")

using namespace std;

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

const int N = 1000;
int x[N + 1][N + 1], n, k, m;

int v[N + 1], f[N + 1];

void print_the_thing(){
	for(int i = 1; i <= n; i++)
		fout << v[i] << ' ';
}

int counter = 0;

void bkt(int poz){
	if(poz == n + 1){
		counter++;
		if(counter == k){
			print_the_thing();
			exit(0);
		}
		return;
	}

	for(int elem = 1; elem <= n; elem++){
		if(x[elem][v[poz - 1]] == 0 && f[elem] == 0){
			v[poz] = elem;
			f[elem] = 1;
			bkt(poz + 1);
			f[elem] = 0;
		}
	}

}

int main(){
	ios_base::sync_with_stdio(false);
	fin >> n >> k >> m;
	for(int i = 1; i <= m; i++){
		int a, b;
		fin >> a >> b;
		x[a][b] = 1;
		x[b][a] = 1;
	}

	bkt(1);

	return 0;
}