Pagini recente » Cod sursa (job #2382009) | Cod sursa (job #1785410) | Cod sursa (job #1023608) | Cod sursa (job #2497801) | Cod sursa (job #170557)
Cod sursa(job #170557)
#include<stdio.h>
FILE *f=fopen("dusman.in","r"),*g=fopen("dusman.out","w");
int n,k,vec,v[1001],nrsol,stiv[1001];
char a[1001][1001];
void back(int cur)
{
for(int i=1;i<=n;i++)
{
if(cur==1)
{
v[i]=1;
stiv[cur]=i;
back(cur+1);
v[i]=0;
}
else
{
if(!v[i]&&!a[stiv[cur-1]][i])
{
if(cur==n)
{
nrsol++;
if(nrsol==k)
{
stiv[n]=i;
for(int j=1;j<=n;fprintf(g,"%d ",stiv[j]),j++);
}
}
else
{
v[i]=1;
stiv[cur]=i;
back(cur+1);
v[i]=0;
}
}
}
}
}
int main()
{
fscanf(f,"%d %d %d",&n,&k,&vec);
int x,y;
for(int i=1;i<=vec;fscanf(f,"%d %d",&x,&y),a[x][y]=a[y][x]=1,i++);
back(1);
fclose(f);
fclose(g);
return 0;
}