Cod sursa(job #170572)

Utilizator raresjuniorSfirlogea Rares raresjunior Data 2 aprilie 2008 22:00:13
Problema Dusman Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include<stdio.h>
FILE *f=fopen("dusman.in","r"),*g=fopen("dusman.out","w");
int n,k,v[1001],p[1001];
int t=1;
char A[1001][1001];

  void dusman(int i)
   {
       if(k<0) return;
       if(i>n)
            {
           k--;
           if(k==0)
                {
			   for(int q=1;q<=n;fprintf(g,"%d ",p[q]),q++);
                t=0;
                }
           return;
            }
       for(int j=1;j<=n&&t;++j)
           if(!v[j]&&!A[p[i-1]][j])
			  {
			   v[j]=1;
               p[i]=j;
               dusman(i+1);
               v[j]=0;
			  }
}

int main()
{
int vec;
fscanf(f,"%d %d %d",&n,&k,&vec);
int x,y,i;
for(i=1;i<=vec;fscanf(f,"%d %d",&x,&y),A[x][y]=A[y][x]=1,i++);
dusman(1);
fclose(f);
fclose(g);
return 0;
}