Cod sursa(job #160581)

Utilizator n_lichkingSentes Norbert n_lichking Data 16 martie 2008 12:12:27
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include<stdio.h>
FILE *f=fopen("permutari.in","r");
FILE *g=fopen("permutari.out","w");
int st[20],k,n;


int valid(int k)
{
  for(register int i=1;i<k;i++)
   if(st[i]==st[k])
      return 0;
return 1;
}



void tip()
{
 for(register int i=1;i<=n;i++)
  fprintf(g,"%d ",st[i]);
  fprintf(g,"\n");
}


void back(int k)
{

  if(k==n+1)
   tip();
  else for(register int i=1;i<=n;i++)
      {st[k]=i;
      if(valid(k))  
        back(k+1);
      }
}

int main()
{

 fscanf(f,"%d",&n);
 back(1);
 fcloseall();
return 0;
}