Pagini recente » Cod sursa (job #1546586) | Cod sursa (job #812228) | Cod sursa (job #1722989) | Cod sursa (job #1179393) | Cod sursa (job #2482223)
#include <fstream>
#include <iostream>
#include <cstdio>
using namespace std;
ifstream in ("dusman.in");
ofstream out ("dusman.out");
int st[1015], a[1015][1015], viz[1015], k, n, m, k1;
void afisare()
{
for(int i = 1; i <= n; i++)
out << st[i] << " ";
out << '\n';
}
void bkt(int i)
{
if ( k1 > k )
return;
if ( i == n + 1 ){
k1 ++;
if ( k1 == k ){
afisare();
return;
}
}
for ( int j = 1; j <= n; j++ )
if ( viz[j] == 0 && a[j][st[i - 1]] == 0){
st[i] = j;
bkt ( i + 1);
viz[j] = 0;
}
}
int main()
{
ios::sync_with_stdio(false);
int v1,v2;
in >> n >> k >> m;
for(int i = 1; i <= m ; i++)
{
in >> v1 >> v2;
a[v1][v2] = 1;
a[v2][v1] = 1;
}
bkt(1);
in.close();
out.close();
return 0;
}