Pagini recente » Cod sursa (job #576115) | Cod sursa (job #943470) | Cod sursa (job #167241) | Cod sursa (job #3320746) | Cod sursa (job #3356049)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("dusman.in");
ofstream fout("dusman.out");
int n, m;
long long k, contor = 0;
bool dusmani[1005][1005];
int sir[1005];
bool folosit[1005];
void back(int pos) {
if (contor == k) return;
if (pos > n) {
contor++;
if (contor == k) {
for (int i = 1; i <= n; ++i) {
fout << sir[i] << (i == n ? "" : " ");
}
fout << "\n";
}
return;
}
for (int i = 1; i <= n; ++i) {
if (!folosit[i]) {
if (pos > 1 && dusmani[sir[pos - 1]][i]) continue;
folosit[i] = true;
sir[pos] = i;
back(pos + 1);
if (contor == k) return;
folosit[i] = false;
}
}
}
int main() {
fin >> n >> k >> m;
for (int i = 0; i < m; ++i) {
int u, v;
fin >> u >> v;
dusmani[u][v] = dusmani[v][u] = true;
}
back(1);
fin.close();
fout.close();
return 0;
}