Pagini recente » Cod sursa (job #2174425) | Cod sursa (job #1128872) | Cod sursa (job #1754403) | Cod sursa (job #1230638) | Cod sursa (job #1318548)
#include <cstdio>
using namespace std;
int n, m, K, x[1001], nr;
bool d[1001][1001], used[1001];
void write(){
for(int i = 1; i <= n; ++i)
printf("%d ", x[i]);
printf("\n");
}
void bak(int k){
if(k == n + 1){
++nr;
if(nr == K)
write();
}
else
for(int i = 1; i <= n; ++i){
x[k] = i;
if(!used[x[k]] && !d[x[k]][x[k - 1]]){
used[x[k]] = true;
bak(k + 1);
used[x[k]] = false;
}
}
}
int main(){
freopen("dusman.in", "r", stdin);
freopen("dusman.out", "w", stdout);
scanf("%d %d %d ", &n, &K, &m);
for(int i = 1; i <= m; ++i){
int x, y;
scanf("%d %d", &x, &y);
d[x][y] = true;
d[y][x] = true;
}
bak(1);
return 0;
}