Pagini recente » Cod sursa (job #25512) | Cod sursa (job #356152) | Cod sursa (job #422685) | Cod sursa (job #2934932) | Cod sursa (job #191850)
Cod sursa(job #191850)
/* Ivan Nicolae - Dusman - Infoarena */
#include <stdio.h>
#include <stdlib.h>
#define NMAX 1001
#define INPUT "dusman.in"
#define OUTPUT "dusman.out"
int i,n,m,k,st[NMAX],A[NMAX][NMAX],Mark[NMAX];
void Print(void)
{
int i;
for (i=1;i<=n;i++)
printf("%d ",st[i]);
printf("\n");
fclose(stdin);
fclose(stdout);
exit(0);
}
void Dusman(int poz)
{
int i;
if (poz==n+1)
{
k--;
if (!k)
Print();
}
else if (poz<n+1)
{
for (i=1;i<=n;i++)
if (!Mark[i] && !A[st[poz-1]][i])
{
st[poz]=i;
Mark[i]=1;
Dusman(poz+1);
Mark[i]=0;
}
}
}
int main()
{
freopen(INPUT,"r",stdin);
freopen(OUTPUT,"w",stdout);
scanf("%d%d%d",&n,&k,&m);
for (i=1;i<=m;i++)
{
int x,y;
scanf("%d%d",&x,&y);
A[x][y]=A[y][x]=1;
}
Dusman(1);
fclose(stdin);
fclose(stdout);
return 0;
}