Pagini recente » Cod sursa (job #194578) | Cod sursa (job #948500) | Cod sursa (job #1376182) | Cod sursa (job #2360707) | Cod sursa (job #1570910)
#include <fstream>
using namespace std;
ifstream in("dusman.in");
ofstream out("dusman.out");
const int MAX_N = 1000;
bool A[1 + MAX_N][1 + MAX_N];
int V[1 + MAX_N];
bool U[1 + MAX_N];
int n, m, k, permind;
void bkt(int lev) {
if(permind >= k) {
return;
}
if(lev == n + 1) {
permind++;
if(permind == k) {
for(int i = 1; i <= n; i++) {
out << V[i] << ' ';
}
}
return;
}
for(int i = 1; i <= n; i++) {
if(U[i] == false && A[V[lev - 1]][i] == false) {
U[i] = true;
V[lev] = i;
bkt(lev + 1);
U[i] = false;
}
}
}
int main() {
int i, a, b;
in >> n >> k >> m;
for(i = 1; i <= m; i++) {
in >> a >> b;
A[a][b] = A[b][a] = true;
}
bkt(1);
return 0;
}