Mai intai trebuie sa te autentifici.
Cod sursa(job #2481552)
Utilizator | Data | 27 octombrie 2019 06:19:41 | |
---|---|---|---|
Problema | Dusman | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.86 kb |
#include<fstream>
using namespace std;
int x[1010], viz[1010], n, m, k, cnt;
bool gr[1010][1010];
ifstream in ("dusman.in");
ofstream out ("dusman.out");
void print(int k)
{
for( int i = 1; i <= k; i ++)
out << x[i] << " ";
out << '\n';
}
void bkt(int p)
{
if (cnt > k) {
return;
}
if (p == n + 1){
++ cnt;
if (cnt == k) {
print (n);
return;
}
}
for (int i = 1; i <= n; i++ )
if (!viz[i]) {
if (!gr[i][x[p - 1]]) {
x[p] = i;
viz[i] = 1;
bkt (p + 1);
viz[i] = 0;
}
}
}
int main ()
{
in >> n >> k >> m;
for (int i = 1; i <= m; i ++) {
int x, y;
in >> x >> y;
gr[x][y] = true;
gr[y][x] = true;
}
bkt (1);
return 0;
}