Cod sursa(job #2481097)

Utilizator BlackLordFMI Alex Oprea BlackLord Data 26 octombrie 2019 13:48:24
Problema Dusman Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <fstream>

using namespace std;

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

const int DIM = 1010;

int n, m, k, i, v[DIM][DIM], a[DIM], x, y;
bool viz[DIM];

void bkt(int p) {
    if (k < 0) {
        return;
    }
    if (p > n){
		--k;
		if (k == 0) {
			for (int i = 1; i <= n; ++i) {
			    fout << a[i] << ' ';
			}
			fout << "\n";
		}
		return;
    }

    for (int i = 1; i <= n; ++i) {
		if (!viz[i] && !v[a[p - 1]][i]){
			a[p] = i;
			viz[i] = 1;
			bkt(p + 1);
			viz[i] = 0;
		}
	}
}

int main(){
    fin >> n >> k >> m;
	for (int i = 1; i <= m; ++i) {
        fin >> x >> y;
		v[x][y] = v[y][x] = 1;
	}
	bkt(1);
	return 0;
}