Pagini recente » Cod sursa (job #60220) | Cod sursa (job #1750311) | Cod sursa (job #1613596) | Cod sursa (job #1945985) | Cod sursa (job #985191)
Cod sursa(job #985191)
#include <iostream>
#include <fstream>
using namespace std;
#define Nmax 1002
bool dusman[Nmax][Nmax];
bool viz[Nmax];
int stiva[Nmax];
int N, K, M;
void read()
{
ifstream f("dusman.in");
f >> N >> K >> M;
for ( int i = 1, A, B; i <= M; ++i )
{
f >> A >> B;
dusman[A][B] = dusman[B][A] = 1;
}
f.close();
}
void print()
{
K--;
if ( K == 0 )
{
ofstream g("dusman.out");
for ( int i = 1; i <= N; ++i )
g << stiva[i] << " ";
g << '\n';
}
}
void back( int k )
{
if ( !K )
return;
if ( k == N+1 )
print();
else
for ( int i = 1; i <= N; ++i )
if ( !viz[i] && !dusman[ stiva[k - 1] ][i] )
{
stiva[k] = i;
viz[i] = 1;
back( k + 1 );
viz[i] = 0;
}
}
int main()
{
read();
back( 1 );
return 0;
}