Pagini recente » Cod sursa (job #2106948) | Cod sursa (job #152914) | Cod sursa (job #2177890) | Cod sursa (job #746629) | Cod sursa (job #168053)
Cod sursa(job #168053)
#include <stdio.h>
int ok = 0;
int n, m, K;
int x[1001];
int s[1001];
int a[1001][1001];
int i, j, h;
int nrs;
void Back(int k);
void Write();
int main()
{
freopen("dusman.in", "r", stdin);
freopen("dusman.out", "w", stdout);
scanf("%d %d %d", &n, &K, &m);
for ( h = 1; h <= m; h++ )
scanf("%d %d", &i, &j),
a[i][j] = a[j][i] = 1;
Back(1);
return 0;
}
void Back(int k)
{
if ( ok ) return;
for ( int i = 1; i <= n; i++ )
{
x[k] = i;
if ( ok ) return;
if ( !s[i] && !a[i][x[k-1]] )
{
s[i] = 1;
if ( k == n )
{
nrs++;
if ( nrs == K ) ok = 1, Write();
}
else Back(k+1);
s[i] = 0;
}
}
}
void Write()
{
for ( int j = 1; j <= n; j++ )
printf("%d ", x[j]);
printf("\n");
}